红联Linux门户
Linux帮助

Shell的五个小应用

发布时间:2005-12-08 11:22:12来源:红联作者:linux
Shell是Linux基础中的基础。用户也许知道类似“ls”、“cp”等这些Shell命令的用法,但是不知尝试过没有Shell其它更为有趣、有用的用法呢?现在给大家展示几个。

巧用watch命令

在Linux中, Shell命令“watch”的作用是以全屏方式重复地执行指定的命令。用户可以通过它了解命令的运行情况。例如用户如果想实时观察内存变化,那么可以输入如下命令:
#watch free

这样就可以动态地观察内存中各个指标在某段时间内的变化情况了。

如果用户要观察虚拟内存的变化, 而不想耽误当前终端的操作,那么可以通过打开另外一个终端达到这个目的。命令如下:
#xterm -e watch -n 1 vmstat &

这样就会弹出一个终端串口显示有关虚拟内存的情况。

删除文中空行

在Linux下,用户如果想删除文件中的空行,一般使用“grep”,这里给出另外的几种方式:

1.使用“cat”命令,示例如下:
#cat 20041116131021.htm|tr -s ‘\n’

2.使用“sed”命令,示例如下:
#sed ‘/^$/d’ 20041116131021.htm

3.使用“awk”工具,示例如下:
#awk ‘{if($0!=“”)print}’ 20041116131021.htm

捕获终端屏幕

“script”是一个Shell内建命令。它的作用是为终端会话制作一个副本,把用户的输入/输出信息以文件的形式保存下来。下面以笔者的应用做个例子:

#script
Script started, file is outputfile //输出文件是outputfile
#ls -l /
……
#exit //用exit结束捕获
Script done, file is outputfile //输出的结果放在outputfile中
#cat outputfile
……



这里仅举例说明“script”命令的用法,以上是将浏览根目录会话保存在outputfile文件中。

开启键盘数字灯

很多Linux用户特别希望在系统启动的时候能自动将小键盘上的数字灯打开。虽然是个小的动作,但是方便了不少。而且对于原来使用Windows的用户来说,感觉Linux在细节上也到位。下面就是一段设置小键盘数字灯的脚本:

INITTY=/dev/tty[1-8]
for tty in $INITTY
do
setleds -D +num < $tty
done



把它放在/etc/rc.d/rc.local文件中即可。在字符模式下,可以输入下面的命令完成:
#setleds -D +num/+caps/+scroll

用户输入检测

有时需要对用户的输入作一些必要的检测,如限制输入的长度和类型等。下面举例要求用户必须输入六个数字,如果输入有非数字字符,或者长度不等于六个,就提示错误信息。脚本源码如下:

#!/bin/csh
while true
do
echo -n “请输入六个数字:”
read num
lengh=${#num} #变量lengh存放输入的长度
if [[ $num != [0-9][0-9][0-9][0-9] || $lengh != 6 ]] then
echo “错误! 请重新输入”
continue
else
echo “输入正确!”
exit 0
fi
done



小结

Shell的用法还远不止这些,Shell命令、Shell编程都是Linux用户应该掌握的基础知识。用户在熟悉了Shell的基本命令和语法结构后,根据需要、善加运用就可让Shell焕发无穷魅力,为工作和学习带来无限乐趣。
文章评论

共有 1 条评论

  1. rosn 于 2005-12-15 10:37:41发表:

    但不知道开启数字灯的脚本何在为什么后缀呢