I'm assuming that the data file is "clean" i.e. NO extraneous lines (i.e. blank, non-printables, etc)
Use a printf statement as follows:
printf "File No: CGA%03d\n",NR
A little explanation is in order with this one. The "0" (zero) after the % sign indicates a zero pading.
The 3 indicates the "size" of the numeric pad. The "d" indicated numeric integer. The "\n" is newline.
The NR is an awk system variable for the current "record number." Thus my stipulation before
about the other "stuff" in the file, i.e. blank lines, non-printables, lines before and after the textual body, etc
Hope this helps.
Regards,
Lou
P.S. Awk! Awk! Awk! (that's supposed to be laughter)
On Nov 22, 2007 1:20 PM, ann kok <annkok2001@xxxxxxxxx
> wrote:
Thank you again
here is expectation output
eg:
awk -v DT=`date +%Y%m%d` program.awk record.txt
The result is
File No: CGA001
Name: AAA
Country: USA
Created: 20071122
Updated: 20071122
File No: CGA002
Name: BBB
Country: Australia
Created: 20071122
Updated: 20071122
File No: CGA003
Name: CCC
Country: England
Created: 20071122
Updated: 20071122
The program is program.awk
BEGIN { RS = "\n" ; FS = "|" }
{
print "File No:", CGAxxx <=== how to
change?
print "Name:", $1
print "Country:", $2
printf "Created: %s\n", DT
printf "Updated: %s\n", DT
print ""
}
the record.txt is
AAA|USA
BBB|Australia
CCC|England
Thank you> > --
--- Lou Spironello <lspironello@xxxxxxxxx> wrote:
> Hello Ann:
>
> man (g)awk
>
> :-)
>
> awk -v | --assign <internal variable
> name>=<variable value> <other awk
> options and stuff>
>
>
> Not quite sure what you want to do do. Can you show
> the resulting output or
> be a bit more specific.
>
>
> Regards,
> Lou
> On Nov 22, 2007 12:55 PM, ann kok
> <annkok2001@xxxxxxxxx> wrote:
>
> > Hi Lou
> >
> > Thank you very much
> >
> > One more question. how can I put the CGA number as
> > variable?
> >
> > eg: CGA001, CGA002..... when
> > i run the program
> >
> > awk -v CGA=`for loop` program.awk file.txt
> >
> > or any way to do it?
> >
> > Thank you again
> >
> >
> >
> > BEGIN { RS = "\n" ; FS = "|" }
> > {
> > print "File No.: CGA001
> > print ""
> > }
> >
> >
> > --- Lou Spironello <lspironello@xxxxxxxxx> wrote:
> >
> > > awk -v HST=`hostname` -f program.awk file.txt
> > >
> > > inside program.awk
> > > use:
> > >
> > > printf "from: %s\n",HST
> > >
> > > Regards,
> > > Lou
> > >
> > > On Nov 21, 2007 3:41 PM, ann kok
> > > <annkok2001@xxxxxxxxx > wrote:
> > >
> > > > Thank you
> > > >
> > > > but i don't know how to put the hostname in
> awk
> > > > program
> > > >
> > > > eg: my program is "program.awk
> > > >
> > > > awk -f program.awk file.txt
> > > >
> > > > Thank you again
> > > >
> > > > BEGIN { RS = "\n" ; FS = "|" }
> > > >
> > > > {
> > > > print "Name:", $9
> > > > print "Created: `date`"
> > > > print "from: `hostname`"
> > > > print ""
> > > > }
> > > >
> > > >
> > > > --- Lou Spironello < lspironello@xxxxxxxxx>
> wrote:
> > > >
> > > > > Hope this helps.
> > > > >
> > > > > echo "test" | awk -v mydate=`date +%Y%m%d`
> > > '{printf
> > > > > "standard input is
> > > > > %s\nmy variable value is %s\n",$1,mydate}'
> > > > >
> > > > > :-)
> > > > >
> > > > >
> > > > > Regards,
> > > > > Lou
> > > > >
> > > > > On Nov 21, 2007 12:22 PM, ann kok
> > > > > < annkok2001@xxxxxxxxx> wrote:
> > > > >
> > > > > > Hi all
> > > > > >
> > > > > > how can I print date in this date format?
> > > 20071122
> > > > > >
> > > > > > Can command "date, hostname" run in awk
> > > program
> > > > > > itself?
> > > > > >
> > > > > > program.awk
> > > > > >
> > > > > > BEGIN { RS = "\n" ; FS = "|" }
> > > > > >
> > > > > > {
> > > > > > print "Name:", $9
> > > > > > print "Created: `date`"
> > > > > > print "from: `hostname`"
> > > > > > print ""
> > > > > > }
> > > > > >
> > > > > > Thank you
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > >
> > > >
> > > >
> > >
> >
> >
>
____________________________________________________________________________________
> > > > > > Be a better pen pal.
> > > > > > Text or chat with friends inside Yahoo!
> Mail.
> > > See
> > > > > how.
> > > > > > http://overview.mail.yahoo.com/
> > > > > >
> > > > > > --
> > > > > > fedora-list mailing list
> > > > > > fedora-list@xxxxxxxxxx
> > > > > > To unsubscribe:
> > > > >
> > >
> https://www.redhat.com/mailman/listinfo/fedora-list
> > > > > >
> > > > > > --
> > > > > fedora-list mailing list
> > > > > fedora-list@xxxxxxxxxx
> > > > > To unsubscribe:
> > > >
> > >
> https://www.redhat.com/mailman/listinfo/fedora-list
> > > >
> > > >
> > > >
> > > >
> > > >
> > >
> >
> >
>
____________________________________________________________________________________
> > > > Get easy, one-click access to your favorites.
> > > > Make Yahoo! your homepage.
> > > > http://www.yahoo.com/r/hs
> > > >
> > > > --
> > > > fedora-list mailing list
> > > > fedora-list@xxxxxxxxxx
> > > > To unsubscribe:
> > >
> https://www.redhat.com/mailman/listinfo/fedora-list
> > > >
> > > > --
> > > fedora-list mailing list
> > > fedora-list@xxxxxxxxxx
> > > To unsubscribe:
> >
> https://www.redhat.com/mailman/listinfo/fedora-list
> >
> >
> >
> >
> >
>
____________________________________________________________________________________
> > Be a better pen pal.
> > Text or chat with friends inside Yahoo! Mail. See
> how.
> > http://overview.mail.yahoo.com/
> >
> > --
> > fedora-list mailing list
> > fedora-list@xxxxxxxxxx
> > To unsubscribe:
> https://www.redhat.com/mailman/listinfo/fedora-list
> >> fedora-list mailing list
> fedora-list@xxxxxxxxxx
> To unsubscribe:
https://www.redhat.com/mailman/listinfo/fedora-list
____________________________________________________________________________________
Be a better pen pal.
Text or chat with friends inside Yahoo! Mail. See how. http://overview.mail.yahoo.com/
--
fedora-list mailing list
fedora-list@xxxxxxxxxx
To unsubscribe: https://www.redhat.com/mailman/listinfo/fedora-list