Sponsored Content
Top Forums Shell Programming and Scripting dynamically change awk Field Separator FS Post 302347046 by satnamx on Monday 24th of August 2009 06:51:33 PM
Old 08-24-2009
Works a treat!

Top stuff..solution well fine


cheers for responding! :-)

regards
Satnam
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Change field separator of grep from : to space

Hi, All, I wonder how to change the field separator of grep from : to space when use grep to display. for example when I use grep -e 'pattern1' -e 'pattern2' -n filename to find patterns, it use : to separate patterns, but I want to use blank space. is there an option I can set to... (2 Replies)
Discussion started by: Jenny.palmy
2 Replies

2. UNIX for Dummies Questions & Answers

Can't figure out what field separator to use in awk....

Hi Friends, Scripting newb here. So I'm trying to create a geektool script that uses awk and printf to output certain fields from top (namely command, cpu%, rsize, pid and time, in that order). Here's the input from the top process that I'm putting into awk: PID COMMAND %CPU ... (3 Replies)
Discussion started by: thom.mattson
3 Replies

3. Shell Programming and Scripting

Field separator in awk

Hi I need to check if field separator I am using in awk statement is " : ", for example: TIME=12:59 HOUR=`echo "$TIME" | awk '{FS=":"; print $1}'` MINUTES=`echo "$TIME" | awk '{FS=":"; print $2}'` Is there a way to check within the above awk statement ? Thanks for help -A (2 Replies)
Discussion started by: aoussenko
2 Replies

4. Shell Programming and Scripting

awk (nawk) field separator

Hi; i have a file and i want to get; - If the last word in line 14 is NOT equal to "Set."; then print 2nd, 3rd, 4th and 5th values of 3rd line. and my code is: nawk 'NR==14 {if ($NF!="Set.") (NR==3{print $2,$3,$4,$5}) }' file.txt but no result?? :confused::(:confused::( (4 Replies)
Discussion started by: gc_sw
4 Replies

5. Shell Programming and Scripting

awk, comma as field separator and text inside double quotes as a field.

Hi, all I need to get fields in a line that are separated by commas, some of the fields are enclosed with double quotes, and they are supposed to be treated as a single field even if there are commas inside the quotes. sample input: for this line, 5 fields are supposed to be extracted, they... (8 Replies)
Discussion started by: kevintse
8 Replies

6. UNIX for Dummies Questions & Answers

change field separator only from nth field until NF

Hi ! input: 111|222|333|aaa|bbb|ccc 999|888|777|nnn|kkk 444|666|555|eee|ttt|ooo|ppp With awk, I am trying to change the FS "|" to "; " only from the 4th field until the end (the number of fields vary between records). In order to get: 111|222|333|aaa; bbb; ccc 999|888|777|nnn; kkk... (1 Reply)
Discussion started by: beca123456
1 Replies

7. Shell Programming and Scripting

awk - show field separator

I am using this code to insert something into a csv file: awk -F";" -v url=$url -v nr=$nr 'NR==nr{$2=url$2}1' file Why do I get the output field1 field2 instead of field1;field2 I have given -F";", so the field separator should surely be ";". (1 Reply)
Discussion started by: locoroco
1 Replies

8. Shell Programming and Scripting

awk field separator

I need to set awk field separator to ";", but I need to avoid ";EXT". so that echo a;b;c;EXTd;e;f | awk -F";" '{print $3}' would give "c;EXTd" (2 Replies)
Discussion started by: locoroco
2 Replies

9. Shell Programming and Scripting

awk field separator help -

Hi Experts , file : - How to construct the awk filed separator so that $1, $2 $3 , can be assigned to the each "" range. I am trying : awk -F"]" '{print $1}' but it is printing the entire file. Not first field. The desired output needed for first field... (9 Replies)
Discussion started by: rveri
9 Replies

10. UNIX for Beginners Questions & Answers

awk field separator not working

Hi, can some some help to get me the right results, I have few text files, need to grep few columns from each file and get the results in one row with comma separated. my code is #folder=/nz/kit/log/backupsvr folder=/export/home/nz/valai/tmpfiles/ echo $folder for entry in `ls... (4 Replies)
Discussion started by: ValaiG
4 Replies
HTTP::Exception(3pm)					User Contributed Perl Documentation				      HTTP::Exception(3pm)

NAME
HTTP::Exception - throw HTTP-Errors as (Exception::Class-) Exceptions VERSION
0.04001 SYNOPSIS
HTTP::Exception lets you throw HTTP-Errors as Exceptions. use HTTP::Exception; # throw a 404 Exception HTTP::Exception->throw(404); # later in your framework eval { ... }; if (my $e = HTTP::Exception->caught) { # do some errorhandling stuff print $e->code; # 404 print $e->status_message; # Not Found } You can also throw HTTP::Exception-subclasses like this. # same 404 Exception eval { HTTP::Exception::404->throw(); }; eval { HTTP::Exception::NOT_FOUND->throw(); }; And catch them accordingly. # same 404 Exception eval { HTTP::Exception::404->throw(); }; if (my $e = HTTP::Exception::405->caught) { do stuff } # won't catch if (my $e = HTTP::Exception::404->caught) { do stuff } # will catch if (my $e = HTTP::Exception::NOT_FOUND->caught) { do stuff } # will catch if (my $e = HTTP::Exception::4XX->caught) { do stuff } # will catch all 4XX Exceptions if (my $e = HTTP::Exception->caught) { do stuff } # will catch every HTTP::Exception if (my $e = Exception::Class->caught) { do stuff } # catch'em all You can create Exceptions and not throw them, because maybe you want to set some fields manually. See "FIELDS" in HTTP::Exception and "ACCESSORS" in HTTP::Exception for more info. # is not thrown, ie doesn't die, only created my $e = HTTP::Exception->new(404); # usual stuff works $e->code; # 404 $e->status_message # Not Found # set status_message to something else $e->status_message('Nothing Here') # fails, because code is only an accessor, see section ACCESSORS below # $e->code(403); # and finally throw our prepared exception $e->throw; DESCRIPTION
Every HTTP::Exception is a Exception::Class - Class. So the same mechanisms apply as with Exception::Class-classes. In fact have a look at Exception::Class' docs for more general information on exceptions and Exception::Class::Base for information on what methods a caught exception also has. HTTP::Exception is only a factory for HTTP::Exception::XXX (where X is a number) subclasses. That means that HTTP::Exception->new(404) returns a HTTP::Exception::404 object, which in turn is a HTTP::Exception::Base - Object. Don't bother checking a caught HTTP::Exception::...-class with "isa" as it might not contain what you would expect. Use the code- or status_message-attributes and the is_ -methods instead. The subclasses are created at compile-time, ie the first time you make "use HTTP::Exception". See paragraph below for the naming scheme of those subclasses. Subclassing the subclasses works as expected. NAMING SCHEME
HTTP::Exception::XXX X is a Number and XXX is a valid HTTP-Statuscode. All HTTP-Statuscodes are supported. See chapter "COMPLETENESS" in HTTP::Exception HTTP::Exception::STATUS_MESSAGE STATUS_MESSAGE is the same name as a HTTP::Status Constant WITHOUT the HTTP_ at the beginning. So see "CONSTANTS" in HTTP::Status for more details. IMPORTING SPECIFIC ERROR RANGES
It is possible to load only specific ranges of errors. For example use HTTP::Exception qw(5XX); HTTP::Exception::500->throw; # works HTTP::Exception::400->throw; # won't work anymore will only create HTTP::Exception::500 till HTTP::Exception::510. In theory this should save some memory, but I don't have any numbers, that back up this claim. You can load multiple ranges use HTTP::Exception qw(3XX 4XX 5XX); And there are aliases for ranges use HTTP::Exception qw(CLIENT_ERROR) The following aliases exist and load the specified ranges: REDIRECTION => 3XX CLIENT_ERROR => 4XX SERVER_ERROR => 5XX ERROR => 4XX 5XX ALL => 1XX 2XX 3XX 4XX 5XX And of course, you can load multiple aliased ranges use HTTP::Exception qw(REDIRECTION ERROR) ALL is the same as not specifying any specific range. # the same use HTTP::Exception qw(ALL); use HTTP::Exception; ACCESSORS (READONLY) code A valid HTTP-Statuscode. See HTTP::Status for information on what codes exist. is_info Return TRUE if "$self-"code> is an Informational status code(1xx). This class of status code indicates a provisional response which can't have any content. is_success Return TRUE if "$self-"code> is a Successful status code(2xx). is_redirect Return TRUE if "$self-"code> is a Redirection status code(3xx). This class if status code indicates that further action needs to be taken by the user agent in order to fulfill the request. is_error Return TRUE if "$self-"code> is an Error status code (4xx or 5xx). The function return TRUE for both client error or a server error status codes. is_client_error Return TRUE if "$self-"code> is an Client Error status code(4xx). This class of status code is intended for cases in which the client seems to have erred. is_server_error Return TRUE if "$self-"code> is an Server Error status code(5xx). This class of status codes is intended for cases in which the server is aware that it has erred or is incapable of performing the request. POD for is_ methods is Copy/Pasted from HTTP::Status, so check back there and alert me of changes. FIELDS
Fields are the same as ACCESSORS except they can be set. Either you set them during Exception creation (->new) or Exception throwing (->throw). HTTP::Exception->new(200, status_message => "Everything's fine"); HTTP::Exception::200->new(status_message => "Everything's fine"); HTTP::Exception::OK->new(status_message => "Everything's fine"); HTTP::Exception->throw(200, status_message => "Everything's fine"); HTTP::Exception::200->throw(status_message => "Everything's fine"); HTTP::Exception::OK->throw(status_message => "Everything's fine"); Catch them in your Webframework like this eval { ... } if (my $e = HTTP::Exception->caught) { print $e->code; # 200 print $e->status_message # "Everything's fine" instead of the usual ok } status_message DEFAULT The HTTP-Statusmessage as provided by HTTP::Status A Message, that represents the Execptions' Status for Humans. PLACK
HTTP::Exception can be used with Plack::Middleware::HTTPExceptions. But HTTP::Exception does not depend on Plack, you can use it anywhere else. It just plays nicely with Plack. COMPLETENESS
For the sake of completeness, HTTP::Exception provides exceptions for non-error-http-statuscodes. This means you can do HTTP::Exception->throw(200); which throws an Exception of type OK. Maybe useless, but complete. A more realworld-example would be a redirection # all are exactly the same HTTP::Exception->throw(301, location => 'google.com'); HTTP::Exception::301->throw(location => 'google.com'); HTTP::Exception::MOVED_PERMANENTLY->throw(location => 'google.com'); CAVEATS
The HTTP::Exception-Subclass-Creation relies on HTTP::Status. It's possible that the Subclasses change, when HTTP::Status' constants are changed. New Subclasses are created automatically, when constants are added to HTTP::Status. That means in turn, that Subclasses disappear, when constants are removed from HTTP::Status. Some constants were added to HTTP::Status' in February 2012. As a result HTTP::Exception broke. But that was the result of uncareful coding on my side. I think, that breaking changes are now quite unlikely. AUTHOR
Thomas Mueller, "<tmueller at cpan.org>" SEE ALSO
Exception::Class, Exception::Class::Base Consult Exception::Class' documentation for the Exception-Mechanism and Exception::Class::Base' docs for a list of methods our caught Exception is also capable of. HTTP::Status Constants, Statuscodes and Statusmessages Plack, especially Plack::Middleware::HTTPExceptions Have a look at Plack, because it rules in general. In the first place, this Module was written as the companion for Plack::Middleware::HTTPExceptions, but since it doesn't depend on Plack, you can use it anywhere else, too. BUGS
Please report any bugs or feature requests to "bug-http-exception at rt.cpan.org", or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=HTTP-Exception <http://rt.cpan.org/NoAuth/ReportBug.html?Queue=HTTP-Exception>. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes. SUPPORT
You can find documentation for this module with the perldoc command. perldoc HTTP::Exception You can also look for information at: o RT: CPAN's request tracker http://rt.cpan.org/NoAuth/Bugs.html?Dist=HTTP-Exception <http://rt.cpan.org/NoAuth/Bugs.html?Dist=HTTP-Exception> o AnnoCPAN: Annotated CPAN documentation http://annocpan.org/dist/HTTP-Exception <http://annocpan.org/dist/HTTP-Exception> o CPAN Ratings http://cpanratings.perl.org/d/HTTP-Exception <http://cpanratings.perl.org/d/HTTP-Exception> o Search CPAN https://metacpan.org/release/HTTP-Exception <https://metacpan.org/release/HTTP-Exception> LICENSE AND COPYRIGHT
Copyright 2010 Thomas Mueller. This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License. See http://dev.perl.org/licenses/ for more information. perl v5.14.2 2012-02-24 HTTP::Exception(3pm)
All times are GMT -4. The time now is 05:01 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy