10-09-2001
Quote:
Originally posted by primal
why did you double cut?
name_t=`grep ^${1} /etc/passwd | cut -d: -f5 | cut -d, -f1`
The reason I did that, was that some of the GECOS fields in my test passwd file are comma delimited. If the User's name is the only information that field is simply -
:Full Name:
In the case that It contains phone number, office number, so on, it looks like this -
:Full Name, Room Number, Work Phone, Home Phone:
I wanted to make sure that if more than one part of the field existed, we only grab the full name.
oh and the 2>&1 is?
who | grep $1 >/dev/null 2>&1
Oops, forgot to explain that. "2" is the file desciptor for "stderr", which is the standard error output. "1" is the descriptor for stdout, standard output. Some times you need to do something with both of them, to keep any output from showing up on your screen. What 2>&1 does, is sends stderr into stdout, so it will follow wherever you're sending the output, whether it's into /dev/null, or into a log file.
I may not be too helpful in explaining it here, but in this case, you probably don't really need it in this case. It's just one of those things I do out of habit...
thanks! im gonna read some more.
-primal
Hey, any time!
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
Hi
I have a file with the records
1 A B C D
2 E F G H
3 I J K L
4 M N O P
In the ouput I want
1 A B C D 2 # F G H
3 I J K L 4 M N O P
How to achieve this? (10 Replies)
Discussion started by: superprg
10 Replies
2. What is on Your Mind?
Same as the Title!
:) (2 Replies)
Discussion started by: ripat
2 Replies
3. Shell Programming and Scripting
Moderator, kindly delete this thread because I already found what I needed... thanks. (0 Replies)
Discussion started by: Deanne
0 Replies
4. Shell Programming and Scripting
Hi Everyone,
i have a string 00:44:40
so:
$tmp=~ s/://gi;
$tmp=~s/({2})({2})({2})/$1*3600+$2*60+$3/e;
the output is 2680.
Any way to combine this two lines into a single line?
Thanks (4 Replies)
Discussion started by: jimmy_y
4 Replies
5. Shell Programming and Scripting
I am learning to build from SVN and other tools, with a lot of copying and pasting from forums. I like to append && echo "success" to all commands so that I can see at a glance if things went all right. Is there a way that I can have the bash shell append this to all commands?
Thanks! (5 Replies)
Discussion started by: dotancohen
5 Replies
6. Shell Programming and Scripting
Hi - Within perl I want to execute a system command. I want to re-direct all the output from the command to a file (@result = `$cmd`;), but I ALSO want the results to be displayed on the screen (system("$cmd");
The reason is this - if the command completes, I want to process the output. If the... (6 Replies)
Discussion started by: jeffw_00
6 Replies
7. Shell Programming and Scripting
Hi,
I have a file like this:
"sdfc@abc.com","arovls","some addr
", "more stuff"
"ssss@email.com","arovls","some addr", "sss"
"edx@email.com","arovls","some addr", "sssdfvv"
"ssss@a55.com","arovls","some addr", "lsdsdgf"
"ssss@0234.com","aro
vls","123
Main", "lSdfv"
I want to... (4 Replies)
Discussion started by: erniel
4 Replies
8. Shell Programming and Scripting
Hi Guys,
I have two input files and I want to combine them and get the unique values and differences and put them into one file. See below desired output file.
Inputfile1:
1111111
2222222
3333333
7860068
7860069
7860071
7860072
Inputfile2:
4444444 (4 Replies)
Discussion started by: pinpe
4 Replies
9. Shell Programming and Scripting
In the awk below, what I am attempting to do is check each line in the tab-delimeted input, which has ~20 lines in it, for a keyword
SVTYPE=Fusion. If the keyword is found I am splitting $3 using the . (dot) and reading the portion before and after the dot in an array a.
If it does have that... (12 Replies)
Discussion started by: cmccabe
12 Replies
10. Shell Programming and Scripting
I have been searching and trying to come up with an awk that will perform the following on a
converted text file (original is a pdf).
1. Since the first two lines are (begin with) text they are removed
2. if $1 is a number then all text is merged (combined) into one line until the next... (3 Replies)
Discussion started by: cmccabe
3 Replies
paste(1) General Commands Manual paste(1)
Name
paste - merge file data
Syntax
paste file1 file2...
paste -dlist file1 file2...
paste -s [-dlist] file1 file2...
Description
In the first two forms, concatenates corresponding lines of the given input files file1, file2, etc. It treats each file as a column or
columns of a table and pastes them together horizontally (parallel merging).
In the last form, the command combines subsequent lines of the input file (serial merging).
In all cases, lines are glued together with the tab character, or with characters from an optionally specified list. Output is to the
standard output, so it can be used as the start of a pipe, or as a filter, if - is used in place of a file name.
Options
- Used in place of any file name, to read a line from the standard input. (There is no prompting).
-dlist Replaces characters of all but last file with nontabs characters (default tab). One or more characters immediately following -d
replace the default tab as the line concatenation character. The list is used circularly, i. e. when exhausted, it is reused. In
parallel merging (i. e. no -s option), the lines from the last file are always terminated with a new-line character, not from the
list. The list may contain the special escape sequences:
(new-line), (tab), \ (backslash), and (empty string, not a null
character). Quoting may be necessary, if characters have special meaning to the shell (for example, to get one backslash, use
-d"\\" ).
Without this option, the new-line characters of each but the last file (or last line in case of the -s option) are replaced by a
tab character. This option allows replacing the tab character by one or more alternate characters (see below).
-s Merges subsequent lines rather than one from each input file. Use tab for concatenation, unless a list is specified with -d
option. Regardless of the list, the very last character of the file is forced to be a new-line.
Examples
ls | paste -d" " -
list directory in one column
ls | paste - - - -
list directory in four columns
paste -s -d"
" file
combine pairs of lines into lines
Diagnostics
line too long
Output lines are restricted to 511 characters.
too many files
Except for -s option, no more than 12 input files may be specified.
See Also
cut(1), grep(1), pr(1)
paste(1)