Sponsored Content
Top Forums Shell Programming and Scripting AWK FS with ignore space option Post 302694311 by Corona688 on Thursday 30th of August 2012 11:10:47 AM
Old 08-30-2012
Quote:
Originally Posted by tprabhaker
Thanks a lot, it's woks perfectly, can you please explain about the following code.
Code:
OLDIFS="$IFS"
IFS="|"
set -- $line
IFS="$OLDIFS"

IFS is a special variable which controls string splitting in shell. Ordinarily it splits on spaces, but it can split on other things as well. So:

1) Save default value of IFS for later.
2) Set IFS to |
3) Set the $1 $2 $3 $4 variables to $line, splitting on |
4) Restore IFS to its original value

You can also use IFS in concert with READ, like

IFS="|" read A B C D where read will split upon |, not whitespace. Because IFS is prefixed to that line, IFS will be changed only for that line and does not need to be restored. This doesn't work for set for some reason.
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Trick to ignore space in folder name

Hello All, I am getting error while passing a folder name that has space to the cmd line argument. sh log_delete2.sh "/home/kumarpua/TESTARTIFACTS/atf-chix/ATF-subversion-dev/ssenglogs/A RM" log_delete2.sh: line 17: cd: /home/kumarpua/TESTARTIFACTS/atf-chix/ATF-subversion-dev/ssenglogs/A:... (3 Replies)
Discussion started by: pulkit
3 Replies

2. Shell Programming and Scripting

awk, ignore first x number of lines.

Is there a way to tell awk to ignore the first 11 lines of a file?? example, I have a csv file with all the heading information in the first lines. I want to split the file into 5-6 different files but I want to retain the the first 11 lines of the file. As it is now I run this command: ... (8 Replies)
Discussion started by: trey85stang
8 Replies

3. Shell Programming and Scripting

Space Monitoring option

thrld=`bdf /u01/|grep u01|awk {'print $5'}|sed 's/'%'//'` thrld1=`bdf /u12/|grep u02|awk {'print $5'}|sed 's/'%'//'` ch="" echo "------------------" echo " " echo "------------------" echo "1)/u01" echo "2)/u12" echo " Please select : \c" read ch case "$ch" in... (3 Replies)
Discussion started by: killboy
3 Replies

4. Shell Programming and Scripting

Ignore records with no values through awk

Hi Guys, Hope you are doing well out there. I have to format the output of a script. Current output is auktltbr.dc-dublin.de:4322 ICCIR2Test13-PB-01 active auktltbr.dc-dublin.de:8322 ICCIR2Test13-SB-02 active auktlttr.dc-dublin.de:4422 ICCIR2Test24-CB-02 active... (10 Replies)
Discussion started by: singh.chandan18
10 Replies

5. Shell Programming and Scripting

awk to ignore the text before a particular word

Hi I am new to Awk programming , i would appreciate if anyone help me with the below scenario i have text file arranged in rows and columns like below 11004 04493384 26798 CASSI0000I Server manager initialization started 111004 04493486 26798 CASSI4005I Retrieving ES... (7 Replies)
Discussion started by: rakeshkumar
7 Replies

6. Shell Programming and Scripting

Ignore case in awk while pattern searching

Hi , I have the file where i have to search for the pattern. The pattern may be lower case or upper case or camel case. Basically I want to ignore while searching the pattern in awk. awk '/error|warning/exception/' filename Please help me (3 Replies)
Discussion started by: arukuku
3 Replies

7. Shell Programming and Scripting

ignore space regular expression

I just wrote a modsecurity rule that blocks execution on "cat /etc/passwd" from webshell. But when I use cat /etc/passwd it works. Ie when I add space after cat. What I need is a regular expression to ignore additional space than the first single space after cat. (2 Replies)
Discussion started by: anil510
2 Replies

8. Shell Programming and Scripting

How to ignore characters and print only numbers using awk?

Input: ak=70&cat15481=lot=6991901">Kaschau (1820-1840) ak=7078&cat15482=lot=70121">Principauté (1940-1993) ak=709&cat=lot15484=70183944">Arubas (4543-5043)Output: 70 15481 6991901 7078 15482 70121 709 15484 70183944 (11 Replies)
Discussion started by: sdf
11 Replies

9. UNIX for Advanced & Expert Users

Need to remove leading space from awk statement space from calculation

I created a awk state to calculate the number of success however when the query runs it has a leading zero. Any ideas on how to remove the leading zero from the calculation? Here is my query: cat myfile.log | grep | awk '{print $2,$3,$7,$11,$15,$19,$23,$27,$31,$35($19/$15*100)}' 02:00:00... (1 Reply)
Discussion started by: bizomb
1 Replies

10. Shell Programming and Scripting

awk to ignore whitespace in field

The awk below executes and update the desired field in my first awk. However, the white space between nonsynonymous SNV in $9 is being split into tabs and my attempt to correct this does not update the field unless it is removed. I am not sure what I am doing wrong? Thank you :). file1 ... (4 Replies)
Discussion started by: cmccabe
4 Replies
lltag_formats(5)						File Formats Manual						  lltag_formats(5)

NAME
formats - Internal formats database file for lltag DESCRIPTION
The internal format database is usually stored in /etc/lltag/formats. The user may override this file by defining a $HOME/.lltag/formats. If this file exists, the system-wide one is ignored. These files contain entries starting with a line such as: [%n - %a - %t] A title between bracket that will be displayed at runtime. Then, the following 3 lines must be given to explain how the format is actually used to parse filenames: type = basename The type is either basename (to parse the last part of the path to a file) or path (to parse the directory part of the path to a file). When actually parsing the path to target files, basename and path parsers will be assembled. All possible combination will be tried. regexp = %L%N%S-%S%A%S-%S%A%L A string composed of any characters, with the following special fields: %L for delimiter (empty by default, multiple spaces if --spaces was given) %S for a space (or multiple spaces if --spaces was given) %N for numbers %A for an alphanumeric string without / %P for any path (alphanumeric string with /) %% for % indices = NUMBER,ARTIST,TITLE A list of fields to match (either given by their full name or associated letter) corresponding to each %N or %A field in the previ- ous format. It may be AUTHOR (or a), ALBUM (A), GENRE (g), NUMBER (n), TITLE (t), DATE (d), COMMENT (c) or IGNORE (i). See also FORMAT in the manpage of lltag for details about these fields. SEE ALSO
lltag(1) AUTHOR
Brice Goglin NOVEMBER 2006 lltag_formats(5)
All times are GMT -4. The time now is 11:10 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy