Example Commands

   

Korn Shell: Unix and Linux Programming Manual, Third Edition, The
By Anatole Olczak

Table of Contents
Appendix G.  Pdksh Quick Reference


# Execute multiple commands on one line

 $ pwd ; ls tmp ; print "Hello world" 

# Run the find command in the background

 $ find .  name tmp.out  print & 

# Connect the output of who to grep

 $ who | grep fred 

# Talk to fred if he is logged on

 $ {who | grep fred ;} && talk fred 

# Send ls output to ls.out, even if noclobber is set

 $ ls >| ls.out 

# Append output of ls to ls.out

 $ ls >> ls.out 

# Send invite.txt to dick, jane, and spot

 $ mail dick jane spot < invite.txt 

# List file names that begin with z

 $ ls z* 

# List two, three, and four character file names

 $ ls ?? ??? ???? 

# List file names that begin with a, b, or c

 $ ls [a-c]* 

# List file names that do not end with.c

 $ ls *[!.c] 

# List file names that contain any number of consecutive x's

 $ ls *(x) 

# List file names that contain only numbers

 $ ls +([0-9]) 

# List file names that do not end in.c,.Z, or .o

 $ ls !(*.c|*.Z|*.o) 

# Set NU to the number of users that are logged on

 $ NU=$(who | wc  l) 

# Set HOSTS to the contents of the /etc/hosts file

 $ HOSTS=$(</etc/hosts) 

# Set TOTAL to the sum of 4 + 3

 $ TOTAL=$((4+3)) 

# Change directory to jane's home directory

 $ cd ~jane 

# Set the right-justify attribute on variable SUM and set it to 70

 $ typeset  R SUM=70 

# Set and export the variable LBIN

 $ typeset  x LBIN=/usr/lbin 

# Set the field width of SUM to 5

 $ typeset  R5 SUM 

# Remove the lowercase attribute from MSYS

 $ typeset +l MSYS 

# Unset variable LBIN

 $ unset LBIN 

# Display the length of variable FNAME

 $ print ${#FNAME} 

# Set SYS to the hostname if not set, then display its value

 $ print ${SYS:=$(hostname)} 

# Display an error message if XBIN is not set

 $ : ${XBIN:?} 

# Display the base directory in LBIN

 $ print ${LBIN##*/} 

# Set array variable MONTHS to the first four month names

 $ set  A MONTHS jan feb mar apr 

# Display element 3 of the XBUF array variable

 $ print ${XBUF[3]} 

# Display the length of the TMP array element 2

 $ print ${#TMP[2]} 

# Display $HOME set to /home/anatole

 $ print '$HOME set to' $HOME 

# Display the value of $ENV

 $ print $ENV 

# Display the last five commands from the history file

 $ history ? 

# Retrieve last print command in vi edit mode

 $ set  o vi; <ESCAPE>/^print<RETURN> 

# Bring background job 3 into the foreground

 $ fg %3 

# Display all information about current jobs

 $ jobs  l 

# Terminate job 5

 $ kill %5 

# Increment variable X

 $ integer X; ((X+=1)) 

# Set variable X to 5 in base 2

 $ typeset  i2 X=5 

# Set variable X to 20 modulo 5

 $ ((X=20%5)) 

# Set Y to 5*4 if X equals 3

 $ ((X==3 && (Y=5*4))) 

# Terminate the Korn shell if no input given in 30 minutes

 $ TMOUT=1800 

# Automatically export variables when defined

 $ set  o allexport 

# Set diagnostic mode

 $ set  x 

# Create an alias for the ls command

 $ alias l='ls  FAc | ${PAGER:?bin/pg}' 

# Create a tracked alias for the cp -r command

 $ alias  t "cp  r" 

# Put the command number and current directory in the prompt

 $ typeset  x PS1="!:$PWD> " 

# Check if variable X is set to a number

 $ [[$X=+([0-9])]] && print "$X is num" 

# Check if X is set to null

 $ [[ z $X]] && print "X set to null" 

# Check if FILE1 is newer than FILE2

 $ [[ $FILE1  nt $FILE2 ]] 

# Check if VAR is set to ABC

 $ [[ $VAR = ABC ]] 

# Check if the bgnice option is set

 $ [[ o bgnice]] && print "bgnice set" 

# Check if TMP is a readable directory

 $ [[  d $TMP &&  x $TMP ]] 

# Check the number of arguments

 $(($#==0)) && {print "Need arg"; exit 1;} 

# Display an error message, then beep

 $ print "Unexpected error!\a" 

# Display a message on standard error

 $ print  u2 "This is going to stderr" 

# Write a message to the command history file

 $ print  s "su attempted on $(date)" 

# Take standard input from FILE

 $ exec 0<FILE 

# Open file descriptor 5 for reading and writing

 $ exec <> 5 

# Display a prompt and read the reply into ANSWER

 $ read ANSWER?"Enter response: " 

# Create a function md that creates a directory and cd's to it

 $ function md {mkdir $1 && cd $1 ; pwd} 

# Set a trap to ignore signals 2 and 3

 $ trap "" 2 3 

# Run dbtest in noexec mode

 $ ksh  n dbtest 

# Set a trap to execute pwd after each command

 $ trap "pwd" DEBUG 

# Set X to 1 and make it readonly

 $ readonly X=1 

# Set VAR to 1 and export it

 $ export VAR=1 

# Set the positional parametersto A B C

 $ set A B C 

# Set the file size creation limit to 1000 blocks

 $ ulimit 1000 

# Disable core dumps

 $ ulimit  c 0 

# Add group write permission to the file creation mask

 $ umask 013 

# Return information about the true command

 $ whence  v true 

       
    Top
     



    Korn Shell. Unix and Linux Programming Manual, Third Edition
    Korn Shell. Unix and Linux Programming Manual, Third Edition
    ISBN: N/A
    EAN: N/A
    Year: 2000
    Pages: 177

    flylib.com © 2008-2017.
    If you may any questions please contact us: flylib@qtcs.net