Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

RE: bug#7076: closed (Re: bug#7076: Command required)

4 views
Skip to first unread message

Imran Shoaib

unread,
Sep 22, 2010, 1:33:49 AM9/22/10
to 70...@debbugs.gnu.org, help-gn...@gnu.org

Thanks for the details, but what if information is to be read from file
and not from command line pattern?

For example from attached file we need to read characters 15 to 22 of
line 3 and use these characters only as input in any other file. Please
advise.


Imran
-----Original Message-----
From: GNU bug Tracking System [mailto:help-d...@gnu.org]
Sent: Tuesday, September 21, 2010 2:19 AM
To: Imran Shoaib
Subject: bug#7076: closed (Re: bug#7076: Command required)

Your bug report

#7076: Command required

which was filed against the coreutils package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to 70...@debbugs.gnu.org.

--
7076: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=7076
GNU Bug Tracking System
Contact help-d...@gnu.org with problems







This E-mail and any files transmitted with it are confidential and
intended solely for the use of the individual or entity to which
they are addressed. If you have received this E-mail in error
please notify the sender or mailto:e-h...@ubl.com.pk. This E-mail
message and attachment, if any, has been scanned for all known
viruses, however we advice the recipient to check this E-mail and
any attachments for the presence of viruses, UBL accepts no
liability for any damage caused by any virus transmitted by this
E-mail. Further, e-mail transmission is not guaranteed as
error-free. UBL therefore does not accept liability for any errors
or omissions in the contents of any messages that arise out of
e-mail transmission.
sample.txt

Bob Proulx

unread,
Sep 22, 2010, 4:36:37 PM9/22/10
to Imran Shoaib, 70...@debbugs.gnu.org, help-gn...@gnu.org
Imran Shoaib wrote:
> Thanks for the details, but what if information is to be read from file
> and not from command line pattern?

Then read the data from the file instead of the command line.

> For example from attached file we need to read characters 15 to 22 of
> line 3 and use these characters only as input in any other file. Please
> advise.

For that specific case using 'awk' is easiest for me. In awk the FNR
variable is "the input record number in the current input file" or the
current line number. Use it to only take action on the 3rd line of
the file.

FNR == 3

Then the substr(s,i,n) function next seems easiest. The substr() function
returns the substr from 's' starting at index position 'i' and
containing at most 'n' characters. Since $0 is the current line
string we use that.

substr($0,15,8); # return characters 15 to 22 of the line.

Then print the result. Putting that all together yieds this:

$ printf "one\ntwo\nabcdefghijklmnopqrstuvwxyz\n" | awk 'FNR==3{print substr($0,15,8);}'
opqrstuv

The command line example was how I developed the case. Because then
everything is contained in the example and it can be shared. You were
asking how to read a file. Most utilities read files in the argument
list. So to read a file simply place the file in the argument list.

$ awk 'NR==3{print substr($0,15,8);}' /tmp/sample.txt
DFLSDJF

> This E-mail and any files transmitted with it are confidential and

Please do not include such useless and annoying disclaimers in your
email. The terms are incompatible with a free software mailing list.
If you cannot avoid this because your company adds it for you then
please use one of the many free email providers on the network when
conversing on mailing lists. Those accounts are free and freely
available and do not include such legal text. I am unlikely to
respond to subsequent messages if they still include such legal text
in the future.

Bob

0 new messages