您的位置:首页 > 运维架构 > Shell

shell编程例子 -- 一个简单的目录菜单

2007-11-06 10:50 363 查看
until
echo List Directory..........1
echo Change Directory........2
echo Edit File...............3
echo Remove File.............4
echo Exit Menu...............5

read choice
test $choice = 5
do
case $choice in
1) ls;;
2) echo Enter target directory
read dir
cd $dir
;;
3) echo Enter file name
read file
vi $file
;;
4) echo Enter file name
read file
rm $file
;;
q|Q|5) echo Goodbye;;
*) echo illegal Option
esac 

shell编程例子 -- 一个.cshrc例子

*****************************************************************
# * *
# * *
# *****************************************************************
#
# HISTORY
#

# @(#)$RCSfile: .cshrc,v $ $Revision: 4.1.3.3 $ (DEC) $Date: 1992/05/11 09:13:09
$
#
setenv MAIL /usr/spool/mail/$USER
#***************************************************************
#***************************************************************
#
# add by zzy 2000.08.06
#
#***************************************************************
#***************************************************************
# set pics environment
#***************************************************************
#source /etc/pics.d/picsenv.csh
#***************************************************************
# set innovator environment
#***************************************************************
#source /usr/innovator/inoenv.csh
#***************************************************************
# set PCFC application environment
#***************************************************************
source ${HOME}/app_login
#***************************************************************
# change path to home path
#***************************************************************
cd ${HOME}
#***************************************************************
app_login:
==========
#***************************************************************
#* module: app_login
#* description: app login
#* This script must be called in the login file
#* with the command 'source app_login'
#* author: zzy
#* version: 31.08.1998
#***************************************************************

#***************************************************************
# entry
#***************************************************************

#***************************************************************
# environment
#***************************************************************
set say = "echo"
set mode = ""
set node = "`uname -n`"
set user = "`logname`"

#***************************************************************
# this path and this script
#***************************************************************
set this_path1 = "`dirname ${HOME}/x`"
set this_script1 = "app_login"

if ( ! -f ${this_path1}/${this_script1} ) then
$say 'this script must be in the directory $HOME'
goto exit
endif

#***************************************************************
# start message
#***************************************************************
$say " %$this_script1, `date '+%H:%M:%S'` start executing on $node"

#***************************************************************
# set project and channel prefix for all user
#***************************************************************
if ( "$user" == "root" ) then
setenv PROJ pcfc
setenv CPRE ""
endif

if ( "$user" == "pcfc" ) then
setenv PROJ pcfc
setenv CPRE ""
endif

if ( "$user" == "picsadm" ) then
setenv PROJ baoshan
setenv CPRE ""
endif

if ( "$user" == "picsvis" ) then
setenv PROJ baoshan
setenv CPRE ""
endif

if ( "$user" == "" ) then
setenv PROJ pcfc
setenv CPRE ""
endif

#***************************************************************
# set project directory
#***************************************************************
setenv PROJ_DIR /home/$PROJ

#***************************************************************
# call project application login
#***************************************************************
if ( -f "${this_path1}/${this_script1}_$PROJ" ) then
$say " %$this_script1, call project application login"
source ${this_path1}/${this_script1}_$PROJ
endif

#***************************************************************
# end message
#***************************************************************
#$say " %$this_script1, `date '+%H:%M:%S'` finished"

#***************************************************************
# exit
#***************************************************************
exit:
unset this_path1
unset this_script1
exit

#***************************************************************

app_login_pcfc
==============
#***************************************************************
#* module: application_login_$PROJ
#* description: application login for a project
#* This script must be called in the login file app_login
#* with the command 'source app_login_$PROJ'
#* author: Zhou zeyan
#*
#* version: 8.1.2000
#***************************************************************

#***************************************************************
# entry
#***************************************************************

#***************************************************************
# environment
#***************************************************************
set say = "echo"
set mode = ""
set node = "`uname -n`"
set user = "`logname`"

#***************************************************************
# this path and this script
#***************************************************************
set this_path2 = "`dirname ${HOME}/x`"
set this_script2 = "app_login_$PROJ"

#***************************************************************
# start message
#***************************************************************
$say " %$this_script2, `date '+%H:%M:%S'` start executing on $node"

#***************************************************************
# history
#***************************************************************
set history=40
alias h history

#***************************************************************
# aliases
#***************************************************************
alias sql sqlplus pcfcadm/pcfcadm

#***************************************************************
# set environment for components
#***************************************************************

set cmp = glb
if ( -r "${PROJ_DIR}/${cmp}/etc/${cmp}_init" ) then
source ${PROJ_DIR}/${cmp}/etc/${cmp}_init
endif
set cmp = utl
if ( -r "${PROJ_DIR}/${cmp}/etc/${cmp}_init" ) then
source ${PROJ_DIR}/${cmp}/etc/${cmp}_init
endif
set cmp = com
if ( -r "${PROJ_DIR}/${cmp}/etc/${cmp}_init" ) then
source ${PROJ_DIR}/${cmp}/etc/${cmp}_init
endif
set cmp = log
if ( -r "${PROJ_DIR}/${cmp}/etc/${cmp}_init" ) then
source ${PROJ_DIR}/${cmp}/etc/${cmp}_init
endif
set cmp = tel
if ( -r "${PROJ_DIR}/${cmp}/etc/${cmp}_init" ) then
source ${PROJ_DIR}/${cmp}/etc/${cmp}_init
endif
set cmp = mva
if ( -r "${PROJ_DIR}/${cmp}/etc/${cmp}_init" ) then
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息