5、 nice [-N] command_line ;定义进程优先级 N ;1-19的一个值
6、 kill [-s single_name] PID [PID?] kill –l ;将列出所有signal_name的值
kill –s KILL 0 ;将终止当前所有shell里的进程 kill –s INT %2 ;2为作业号,前面需加%
十一、Shell编程
1、 shell程序中的参数 $sh_program arg1 arg2??argx $0 $1 $2?? $x 9以后的数字用{}括起来,如{10} {24}? 2、 特殊的shell变量#和*
$# ;代表所有参数的数目:1,2,3? $* ;访问整个参数列表(不包括$0)
3、 shift [n] ;所有*字符里的参数会左移n个位置,在#里则递减n个 4、 read variable [variable?] ;收集终端用户键入的信息
5、 sh –x shell_program argument ;程序执行之前会显示程序中的每一个命令
十二、shell编程—分支
1、 返回码
命令正常完成,返回0,否则返回非0值 echo $? ;显示前一个命令返回值 2、 test命令
test expression or [expression] ;对表达式估值,产生返回值
3、 test—数字型测试 [number relation number]
relation:-lt(小于)-le(小于等于)-gt(>)-ge(≥)-eq(=)-ne(≠) 4、 test—字符串型测试
[ string1 = string2 ] [ string1 != string2 ] 5、 test—文件型测试 test –option filename
-option: -f ;若该文件存在 ,且是一个普通文件,返回值真(0) -s ;若该文件存在 ,且文件长度大于0,返回值真(0)
-r ;若file存在且可读,返回值真(0) -w ;若file存在且可写,返回值真(0) -x ;若file存在且可执行,返回值真(0) -d directory ;若directory存在且是一个目录,返回值真(0) 6、 test的其他操作符
-o OR ,-a AND ,! NOT \\(\\) GROUPING
例:[\\($#=2\\) –a \\(“$1”=“-m”\\) –a \\(-d “$2” –o –s “$2” \\)]
确认命令行中是否有2个参数,以及第一个参数是否为-m,最后一个参数是否为一个大小大于0的文件或是一个目录 7、 if listA then
listB fi
8、 if listA then
listB else
listC fi
9、 Case word in pattern1) listA ;; pattern2)listB ;; patternN)listN ;; esac
pattern中可使用的字符:*,?,[?]
在[?]中匹配“-”两端字符间的任一字符,还可用|这个字符表示“或者”
十三、Shell编程—循环
1、let expression or ((expression)) ;计算 2、while ? do ? done 3、untile ? do ? done
4、for var in list ? do ? done 5、break [n]
十四、Vi工具
1、 光标控制
h,j,k,l:左,下,上,右移动一个字符
w,b:向前及向后一个词的移动 $:到所在行行尾 ^ or o:到所在行行头 G:到文件结尾处 G or :#:到等#行 L:到本屏最后一行 M:到本屏中间行
H:到本屏第一行第一个字符 Ctrl+l:重复本屏中间行 2、 输入模式
a:在光标后追加一个新文本 i:在光标前插入一个新文本
O、o:在当前行上/下面开始一个新行 A:在行尾追加一个新文本 I:在行的起始处插入一个新文本 3、 删除文本命令 x:删除光标所处位置字符 dw:删除光标所在处词 dd:del整行
dG:从文件里最后一行开始删除 d$:删除到行尾 d^:删除到行首 4、 移动与拷贝文本
P,p:将buffer里内容粘到光标前/后的文本里
yw:抽取光标所在的词 yy:抽取光标所在的整行
yG:抽取光标所在位置到文件的最后一行 y$:抽取到行尾 y^:抽取到行的起始处 5、 修改文本
r character:用r后所跟字符替换光标所指字符 R :替换所有字符直到按ESC键停止 C object:修改C后面叫object名的内容 cw:修改当前词 cc:修改当前行
cG:从文件最后一行开始修改 c$:在某行的结束处修改
点(.)命令:重复上一次修改操作
十五、文件脱机存储
1、 tar命令
tar –cvf /dev/rmt/0m myfile ;create an archive
tar –tvf /dev/rmt/0m ;get a table of contents from the archive
tar –xvf /dev/rmt/0m myfile ;extract a file from the archive -c ;创建一个新归档文件 -x ;将文件从归档库中提取出来 -t ;打印档案的内容列表 -r ;将文件加到归档库尾