怎样编写Linux|怎样编写Linux shell script(一)

近来正在学习Linux shell script,主要是学习Linux Shell Scripting Tutorial (LSST) v1.05r3的几个章节,但因为是英文的所以这里把它翻译下,也是自己加深印象。好了直接进入主题。
1.How to write shell script ?
a.首先用任何的编译器(vi,vim,kwrite,....)编写一个shell script;

b.然后按照下面的方法给你编译的shell script添加可执行属性;
chmod添加(删除)属性文件名称
例如:
chmod+xyour_script_name 或者
chmod755 your_script_name
例子中第二中方法中755表示对三个不同类别的使用者设置属性,这里首先大家要知道Linux中的除了可以用r,w,x表示可读,可写,可执行的属性外,还可以用一个数字代表一种属性,分别是r-4,w-2,x-1,也就是4就表示可读,2表示可写,1表示可执行;那么如何设置这些属性呢?如果我们用常规的方法是通过“+、-”符号来设置的,也就是"+r"表示给某个文件加上可读属性,"-r"表示给某个文件去除可读属性;
在用数字表示中是这样设定属性的,用数字设定属性更加的方便快捷,一次可以设定三个类别使用者的属性“文件拥有者”、“文件拥有者所在的组成员”、“其它使用者”,上面的例子中,7是给文件拥有者设定的属性,那"7"是什么意思呢?其实就是各个属性数字相加的结果,也就是如果你要设定此类使用者用可读4,可写2,可执行1,属性,那么就是4+2+1 = 7;聪明的你可能已经知道了文件拥有者所在地组成员的属性是 可读 可执行 即:4+1 = 5 ,其它使用者的属性也是 可读 可执行 即:4+1 = 5. 好了属性设定就不扯了,关键是要记住chmod命令。

c.编译好了脚本以后就是执行了
这里提供两种方法执行你的脚本:
bashyour_script_name#这里的“#”号中Linux shell script中是表示其后的内容为注释;bash 是我们系统中的shell类型这里就不扯远了
./your_script_name#建议大家就直接用“./”接你的脚本名称执行,为什么不能像Windows一样直接输文件名执行呢?这个问题请自己找答案

好了,我们现在把上面的连贯做一遍;
首先建立一个脚本,我在这里使用vi编译器。
$ vi first
内容如下:
#
# My first shell script
#
clear
echo "Knowledge is Power"
保存退出;
然后添加可执行属性;
$ chmod 755 first
最后执行
$ ./first
你将会在屏幕上看到 "Knowledge is Power"。
第一课到这里就结束了,你学会了吗?
练习题:
【怎样编写Linux|怎样编写Linux shell script(一)】1)编写如下的脚本内容,保存,然后执行记下它的输出。

$ vi ginfo
#
#
# Script to print user information who currently login , current date & time
#
clear
echo "Hello $USER"
echo "Today is /c "; date
echo "Number of user login : /c" ; who | wc -l
echo "Calendar"
cal
exit 0

    推荐阅读