05-13-2004
printing 3rd or 4th feild from last in awk.
Whats up fellas... hope someone can help me with the following...
I am parsing an file that is space delimited, however, in the middle, there is an ugly "Account Name" feild that in itself has multiple varying spaces, and commas which throws off my script.
The 1st 3 feilds I am able to obtain easily as well as the last feld....
This is what he file looks like:
head cr123.rpt
100000 121212 11-May-04 Pete's plumbing inc. CASH 21.50
110000 121323 11-May-04 Mcarthey, Robert CASH 30.00
200000 130909 11-May-04 Bob, Andrew, Blake CHECK 40.00
222000 310902 11-May-04 TGIF CREDIT 50.00
--------------------------------------------------
cat cr123.rpt | while read line
do
Acctnum=`echo $line | awk '{print $1}'`
Refnum=`echo $line | awk '{print $2}'`
Date=`echo $line | awk '{print $3}'`
Ammt-`echo $line | awk '{print $NF}'`
---------------------------------------------------
Is there any way to obtain the 2nd feild to the last? for instance, I would like to generate a file of everything BUT the account name.
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi,
Shell script: I would need help on How to extract 3rd line 4th column of a file with single liner
Thanks in advance. (4 Replies)
Discussion started by: krishnamurthig
4 Replies
2. Shell Programming and Scripting
Fallowing is the input file that is pipe seperated.
is it possible to generated the report that is alligned left justifed as that of sample output.
I apprecitae your help on this.
InputFile (temp.txt):
108005555|001|christina.lipski||Submitter... (3 Replies)
Discussion started by: ainuddin
3 Replies
3. UNIX for Advanced & Expert Users
I want to know how to, given a string like W87151WR71C, if the 4th and 5th character (in this case 15) are greater than 45, then to add 1 to the 3rd character (in this case 7) and assign the revised string the variable name MODSTRING.
Thanks in advance. This is ultimately to grab info from... (6 Replies)
Discussion started by: glev2005
6 Replies
4. Shell Programming and Scripting
Hi All!
I trying to execute this perl script to extract a particular field in a text file, luckily it works. But, right now I would like to extract 3 more fields in the text file but couldnt get the right syntax on how to do it.
command is:
perl -pe '$_ = (split(//)) . "\n"' TestDoc.txt... (3 Replies)
Discussion started by: VicNetIT
3 Replies
5. UNIX for Dummies Questions & Answers
I have a flatfile A.txt
date|products|notes|location
121117|a108|this is a test|florida
121118|b111|just test it|tampa
How do i write an awk to create a file name as location.txt and have products:notes
awk -F'|' '{ print $2 ":" $3 }' A.txt > $4.txt
I am sure it cannot write to... (5 Replies)
Discussion started by: sabercats
5 Replies
6. Shell Programming and Scripting
Hi Experts,
I am trying to print $2 & the IP_address upto 3rd octet only.
But unable to do so, Trying # awk '{print $2, substr($4,1,9)}' file . but not correct
File:
HOST= cmiHOST06 :: 10.26.107.73:/data120 /nbu/cmiHOST06/athpx07/aa1
HOST= cmiHOST05 :: 10.26.12.76:/data120... (5 Replies)
Discussion started by: rveri
5 Replies
7. UNIX for Dummies Questions & Answers
Hi, I have a file with +/- 13000 lines and 4 column. I need to search the 3rd column for a word that begins with "SAP-" and move/skip it to the next column (4th). Because the 3rd column need to stay empty.
Thanks in advance.:)
89653 36891 OTR-60 SAP-2
89653 36892 OTR-10 SAP-2... (2 Replies)
Discussion started by: AK47
2 Replies
8. Shell Programming and Scripting
#cat file
testing test! nipw asdkjasjdk ok! what !ok
host server1
check_ssh_disk!102.56.1.101!30!50!/
other
host server 2
des
check_ssh_disk!192.6.1.10!40!30!/
#grep check file| awk -F! '{print $3,$4}'|awk '{gsub($1,"",$1)}1'
50
30
#
Output: (6 Replies)
Discussion started by: kenshinhimura
6 Replies
9. Shell Programming and Scripting
input
"A","B","C,D","E","F"
"S","T","U,V","W","X"
"AA","BB","CC,DD","EEEE","FFF"
required output:
"A","B","C,D","C,D","F"
"S", T","U,V","U,V","X"
"AA","BB","CC,DD","CC,DD","FFF"
tried using awk but double quotes not preserving for every field. any help to solve this is much... (5 Replies)
Discussion started by: khblts
5 Replies
10. Shell Programming and Scripting
im trying to get
awk to print the string between 3rd and 4th backslashs to end of line
test could be any word
this
http://example.com/test/ >to this
http://example.com/test/ > testalso the other way round insert string at end of line... (13 Replies)
Discussion started by: bob123
13 Replies
LEARN ABOUT MOJAVE
english
English(3pm) Perl Programmers Reference Guide English(3pm)
NAME
English - use nice English (or awk) names for ugly punctuation variables
SYNOPSIS
use English;
use English qw( -no_match_vars ) ; # Avoids regex performance penalty
# in perl 5.16 and earlier
...
if ($ERRNO =~ /denied/) { ... }
DESCRIPTION
This module provides aliases for the built-in variables whose names no one seems to like to read. Variables with side-effects which get
triggered just by accessing them (like $0) will still be affected.
For those variables that have an awk version, both long and short English alternatives are provided. For example, the $/ variable can be
referred to either $RS or $INPUT_RECORD_SEPARATOR if you are using the English module.
See perlvar for a complete list of these.
PERFORMANCE
NOTE: This was fixed in perl 5.20. Mentioning these three variables no longer makes a speed difference. This section still applies if
your code is to run on perl 5.18 or earlier.
This module can provoke sizeable inefficiencies for regular expressions, due to unfortunate implementation details. If performance matters
in your application and you don't need $PREMATCH, $MATCH, or $POSTMATCH, try doing
use English qw( -no_match_vars ) ;
. It is especially important to do this in modules to avoid penalizing all applications which use them.
perl v5.18.2 2014-01-06 English(3pm)