|
| Chazin Home | Ca-binding Protein DB | Vanderbilt Home |
|
| Research Description | Publications | Wisdom | Search | ||
| How to contribute | About this page |
collected and edited by
Randal R. Ketchem
last updated
Tue Jun 25 17:27:22 PDT 1996
These tips have been added as I have discovered them over the years, so they aren't yet catagorized. Search for a topic to find occurrences.
----------
To copy fields 3 and 7 from input to output (3 string, 7 float):
awk '{printf"%s\t%10.4f\n", $3, $7}' < input > output
----------
To add a column of numbers:
awk '{sum=sum+$1;printf("sum: %d\n", sum)}' < input | tail -1
----------
To calc the average of numbers in a file:
egrep "^:2" *out | egrep total | cut -c44- | \
awk '{sum += $1;total += 1;printf"avg = %.4f\n", sum/total}' | \
tail -1
----------
To find 'word' in files owned by 'username' from location '.':
find . -user username -print -exec \grep word '{}' \; > output &
----------
To find all files that do not end in 'pdb' in location '.':
find . \( ! -name \*pdb \) -print
----------
To find all files that do not end in 'pdb' in location '.' and execute a
command on each file found:
find . \( ! -name \*pdb \) -exec \anneal2pdb '{}' \;
----------
To remove all files 'garb':
find ~ -name garb -print -exec \rm '{}' \;
----------
To report the file size of all files bigger than 2 meg and older than 30
days.
find . -type f -size +4096 -atime +30 -exec \du -sk '{}' \;
----------
To search with a wildcard:
find . -name goob\* -print
----------
To manually nudge NFS:
umount /iris1/a (or whatever)
mount -a -t nfs
exportfs -a -v
----------
To encrypt the file 'input' to a file 'output':
crypt < input > output
enter key: (enter a password)
To decrypt the file 'output' to a file 'done':
crypt < output > done
enter key: (enter the password used to encrypt 'output')
----------
To convert tabs to spaces:
expand -tabstop filename.in > filename.out
eg
expand -3 garb > garb.out
will convert tabs to three spaces
To convert spaces to tabs:
unexpand filename
----------
To check the print que:
lpq
To remove a print job:
lprm <job # from lpq>
To check the printer:
lpc
----------
To remove duplicate lines from a file:
uniq filename > out
----------
To mail to compuserve:
If the username is '70000,200', mail to:
mail 70000.200@compuserve.com
note the period instead of the comma.
To mail from compuserve:
>INTERNET Loopy@cup.portal.com
----------
To create a text file from a manual page:
man command | expand > file
vi file
:1,$s/.^V^H//g
:x
----------
To compare two files:
Flags 1, 2, or 3 suppress printing of the corresponding column. Thus
comm -12 prints only the lines common to the two files; comm -23 prints
only lines in the first file but not in the second; comm -123 prints
nothing.
----------
To run a string of commands over and over:
csh> sh
$ while :
> do
> command
> command
> done
When done, ^C to quit. ^D to return to csh.
----------
To get a list of 'fsu.edu' machines:
UNIX> nslookup
> ls fsu.edu > file
> exit
----------
To get a machine name from an IP address:
UNIX> nslookup
> set type=ptr
> 34.12.186.128.in-addr.arpa
Server: magnet.fsu.edu
Address: 146.201.250.2
34.12.186.128.in-addr.arpa name = weirdscience.chem.fsu.edu
----------
To add line numbers to the beggining of a file:
grep -n . input > output
or
paste x y > z
----------
To move (or copy) a directory heirarchy:
cd fromdir
tar cf - . | (cd todir; tar xfBp -)
----------
To copy a directory heirarchy exactly:
cd fromdir; tar cBf - . | (cd todir; tar xpBf -)
----------
To restart the sendmail process:
kill the original process
/usr/lib/sendmail -bd -q1h
----------
To alias rm so that it lists the files to be removed and asks for
confirmation:
alias rm \
'/bin/ls -AsF \!* && echo -n "Remove? " && if ($< == y) /bin/rm -rf \!*'
----------
To remove blank lines from a file:
sed -e '/^$/d' file.in > file.out
----------