Sponsored Content
Top Forums Shell Programming and Scripting cut: get either one or two fields Post 302151780 by radoulov on Monday 17th of December 2007 09:59:06 AM
Old 12-17-2007
Quote:
Originally Posted by maxvirrozeito
Hello,

I would like to extract one or two fields of a line.

At the moment, I am extracting the first field of a line:
Code:
command | cut -f 1 -d '.' > file

The line can have two or three fields delimited with a dot.

if three fields, I want to be able to get the first two
ie if line = X.Y.Z
output X.Y
if two fields, I want to be able to get the first one only.
ie if line = X.Y
output X

How can I do this ?

Thank you for any help
Max
Code:
printf "%s\n" "${line%.*}"

I mean:

Code:
$ printf "X.Y.Z\n"|while IFS= read -r;do printf "%s\n" "${REPLY%.*}";done
X.Y
$ printf "X.Y\n"|while IFS= read -r;do printf "%s\n" "${REPLY%.*}";done
X

If you read doesn't support the -r switch, remove it.

If your shell support process substitution:

Code:
$ { read;printf "${REPLY%.*}";}< <(printf "X.Y.Z\n")
X.Y
$ { read;printf "${REPLY%.*}";}< <(printf "X.Y\n")
X

Where the second printf is your command.

Last edited by radoulov; 12-17-2007 at 11:06 AM..
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

how to cut fields

I want to cut two coloums simulatiously and paste in some other file for ex: cut d ' ' -f3 -f4 xxx | paste yyy - > zzz; from the above i want to cut two fileds 3 and 4 and paste as last coloums of single file (zzz). how to solve this regards rajan (1 Reply)
Discussion started by: rajan_ka1
1 Replies

2. Shell Programming and Scripting

Fast way to cut fields

I have a tab delimited file which has 90 fields and 15 million rows approximately... I need to cut the first 78 fields only and I am using the cut -f1-78 <filename> <outputfile> It is taking a lot of time... Is there a faster way of doing this? Can we use NAWK to gain better... (0 Replies)
Discussion started by: madhunk
0 Replies

3. Shell Programming and Scripting

Cut Last 3 Fields

I have a text: dsj khfksjdh <time> EST 2006 ab cgnr jkkjt <time> EST 2006 gfhdgjghg <time> EST 2006 fkdjh kjhsekjrh kdjhfkh jhdfkhfdkjh kjdf <time> EST 2006 In the above file i need to extract time from every line... which is always the third from the last... Pls help! Cheers, Bouren (4 Replies)
Discussion started by: bourne
4 Replies

4. Shell Programming and Scripting

awk sed cut? to rearrange random number of fields into 3 fields

I'm working on formatting some attendance data to meet a vendors requirements to upload to their system. With some help on the forums here, I have the data close. But they've since changed what they want. The vendor wants me to submit three fields to them. Field 1 is the studentid field,... (4 Replies)
Discussion started by: axo959
4 Replies

5. Shell Programming and Scripting

how to cut fields in file

Hi, I have data in following format. 10001, John, Daves, Architecture, -2219 10002, Jim, Cirners, Businessman, -2219 1003, Tom, Katch, Engineer, -14003 I want to select the last column of the above given file and paste it on a different file in the following manner. File TEST column... (11 Replies)
Discussion started by: kam786sim
11 Replies

6. Shell Programming and Scripting

Cut 2 fields and write to a output file

Hi, I am writing a code where the file is a pipe delimited and I would need to extract the 2nd part of field2 if it is "ATTN", "C/O" or "%" and check to see if field9 is populated or not. If field9 is already populated then leave it as is but if field9 is not populated then take the 2nd part of... (3 Replies)
Discussion started by: msalam65
3 Replies

7. Shell Programming and Scripting

cut a line into different fields based on identifiers

cat fileanme.txt custom1=, custom2=, userPulseId=3005, accountPolicyId=1, custom3=, custom4=, homeLocationId=0, i need to make the fields appear in next line based on identifier (,) ie comma so output should read cat fileanme.txt custom1=, custom2=, userPulseId=3005, ... (8 Replies)
Discussion started by: vivek d r
8 Replies

8. UNIX for Dummies Questions & Answers

Cut fields between delimiters

I'm having bother getting both lines contained in a file to output as the same value. A simple example: john:123456:123:456:doe john:123456:123:doe cut -d: -f1,4 input file john:456 john:doe ^ first line should be same as second. trick one for me, i know why it's because of the... (4 Replies)
Discussion started by: landofus
4 Replies

9. Shell Programming and Scripting

How To Count Fields For Cut?

I am new to cut and I want to use the field option with a space delimiter on an Apache log file. For example, if I wanted to find the 200 HTTP code using cut in this manner on the file below cat access_abc.log | cut -d' ' -f7 | grep "200" 157.55.39.183 - - "GET /content/696-news041305... (4 Replies)
Discussion started by: sharingsunshine
4 Replies

10. UNIX for Beginners Questions & Answers

Cut command: can't make it cut fields

I'm a complete beginner in UNIX (and not a computer science student either), just undergoing a tutoring course. Trying to replicate the instructions on my own I directed output of the ls listing command (lists all files of my home directory ) to My_dir.tsv file (see the screenshot) to make use of... (9 Replies)
Discussion started by: scrutinizerix
9 Replies
PAGESIZES(5)                                                    File Formats Manual                                                   PAGESIZES(5)

NAME
pagesizes - HylaFAX page size definitions DESCRIPTION
The pagesizes database defines the page dimensions and guaranteed reproducible areas (GRA) for well-known page sizes. The GRA is the por- tion of the page that is guaranteed to be imaged during facsimile transmission. This region is typically less than the full page dimen- sions because of paper roller contacts and other mechanical aspects of the printing process in a facsimile machine. All HylaFAX programs that require page size information read the information from this database using a page size name. Documents should be prepared such that the full page dimensions are employed with the imaged area contained within the GRA. The system-wide default page size to use in preparing documents for transmission is given by the ``default'' entry in the database. (NB: the default entry should be placed last so that inverse matches find the real page size name and not the default entry.) The page size database is an ASCII file with the following format. Each entry consists of whitespace-separated fields: name abbrev width height gra-width gra-height top-margin left-margin Fields have the following interpretation: name the full name for the page size; e.g. ISO A4; abbrev an abbreviated version of the full name for use in compact listings such as the receive queue listing printed by faxstat(1); width the full width of the page; height the full height of the page; gra-width the width of the GRA; gra-height the height of the GRA; top-margin the margin between the top of the full page and the top of the GRA; left-margin the margin between the left side of the full page the left side of the GRA. The first two fields must be separated from the subsequent fields by a tab character (possibly followed by more whitespace); this is done to easily permit blank characters to be included in names. Otherwise fields can be separated by any amount of any kind of whitespace. Numbers are all base 10 and in basic measurement units (BMU); defined as 1/1200 x 25.4 millimeters for paper output with a scale factor of one. All fields must be present on a single line; otherwise the entry is ignored. Comments are introduced by the ``#'' character and con- tinue to the end the line. Page size database lookups are either by name or by page dimensions. Lookups by name are done by sequentially scanning the entries in the database for the first entry that has a matching abbreviation or substring of the page size name field. The string comparisons ignore case so, for example, ``a4'' would match a full name of ``ISO A4''. Lookups by dimension scan the entire database and return the page with the closest dimensions using a straightforward distance metric. If the difference in dimensions of the closest match is greater than 1/2 inch on each side, then no page entry is returned for a lookup by dimension. SEE ALSO
hylafax-client(1), faxmail(1), faxstat(1), sendfax(1), sgi2fax(1), textfmt(1). December 5, 1994 PAGESIZES(5)
All times are GMT -4. The time now is 07:00 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy