深入探索Shell:命令编写与变量使用
1. 命令文件的编写与执行
在Shell中,当我们输入类似who | wc -l的命令时,实际上就是在进行编程。Shell会解释命令行,识别管道符号,将第一个命令的输出连接到第二个命令的输入,并启动两个命令的执行。
我们可以直接在终端输入Shell程序,也可以将命令写入文件,然后让Shell执行该文件。例如,若要多次查看登录用户的数量,可将who | wc -l写入一个名为nu的文件:
$ cat nu who | wc –l $尝试执行该文件时,可能会遇到问题:
$ nu sh: nu: cannot execute $这是因为在执行脚本前,需要使用chmod命令更改文件权限,使其可执行:
$ ls -l nu -rw-rw-r-- 1 steve steve 12 Jul 10 11:42 nu $ chmod +x nu $ ls -l nu -rwxrwxr-x 1 steve steve 12 Jul 10 11:42 nu $再次尝试执行:
$ nu 8