2.2 Shell的"hello world"
在本书中,我们借用Java的经验,用一个"hello world"来介绍Shell编程。具体步骤如下。
(1)登录Linux系统后,在"~"属主目录下,使用vi命令新建一个文本文件,文件的内容如下。
#!/bin/bash
echo "hello world !"
解释如下。
●"#!"是一个约定的标记,它告诉系统这个脚本需要什么解释器来执行,即使用哪一种Shell。
●echo命令用于向窗口输出文本。
(2)保存文件后,需要改变文件的属性为可执行文件。
chmod +x test.sh
(3)执行./test.sh脚本文件。运行结果如图 2-3所示。
注意,一定要写成./test.sh,而不是test.sh。运行其他二进制程序也一样。如果直接写test.sh,Linux系统会从PATH里寻找test.sh,而只有/bin、/sbin、/usr/bin、/usr/sbin等在PATH里,用户的当前目录通常不在PATH里,所以写成test.sh是会找不到命令的,要用./test.sh告诉系统就在当前目录中找。"."代表当前目录。
假如当前的例子test.sh在myshell目录下,myshell目录在"~"属主目录下,那么在属主目录下怎么执行test.sh呢?具体方法如图2-4所示。
图2-4 在myshell目录下执行test.sh
2.3 echo的应用
在"hello world"示例中,已经使用了echo。因为下面有大量会用到echo的示例,所以在正式开始介绍Shell编程之前,先来了解一下echo命令。
Shell的echo命令与PHP的echo命令类似,均用于字符串的输出。
通过以下命令,输出普通字符串。
echo "This is a string."
通过以下命令,输出一个带双引号的字符串。
echo "\"This is a string.\""
\c实现不换行的输出(注意,要加一个-e开启转义功能)。
echo -e "OK.\c"
echo "This is a string."
\n实现换行的输出(注意,要加一个-e开启转义功能)。
echo -e "this is \nthe sec line."
通过以下命令,显示当前日期。
echo `date`
注意,"`"符号是使用键盘上图2-5所示方框标记的键输入的。
上面5个命令的执行结果如图2-6所示。
版权声明:51Testing软件测试网获得人民邮电出版社和作者授权连载本书部分章节。
任何个人或单位未获得明确的书面许可,不得对本文内容复制、转载或进行镜像,否则将追究法律责任。