1.shell相当于windows下的的cmd提示符比较类似,可以通过shell编写脚本,他们是在运行时解释执行的(挺好的特性,很多东西需要在运行时候再选择执行)
2.ls -al |more 意思是显示当前目录的所有文件,但是把ls的输出通过|转换成了more的输入,可以换页显示(通过|实现数据的管道传递)
3.用的一般是/bin/sh是对/bin/bash的一个连接,用bash。
4.管道的重定向:文件描述符0代表标准输入,1标准输出,2标准错误输出。
ls -l > aa.txt //把ls命令的输出保存到文件aa.txt中。
ls -l >> aa.txt //附件的aa。txt的尾部。
如果想对标准错误重定向,只需要吧标准错误文件描述符2放到>之前,例如kaill -HUP 1234 >aa.txt 2>bb.txt //把标准输出定向到aa,错误输出定向到bb。
管道|,意思是将|前的输出通过管道|传输给|后面的命令当输入。
5.创建一个简单的脚本:
#!/bin/bash //利用的是bash脚本
for file in *
do
if grep -q POSIX $file
fi
done
exit 0//相当于retrun了,0表示成功
6.把脚本设置为可执行。
/bin/sh first
或者
chmod +x first //改变文件的模式
first//执行。
7.shell的语法
aa=abc;//不能用空格,所有的变量都被看做是字符串
8.AND OR列表
sta1&&sta2&&sta3,只有前面所有命令全部成功,后面才可以执行。
sta1||sta2||sta3 持续执行,知道一条命令成功为止,从左执行,如果返回false,则继续,知道返回true
echo $aa // 显示aa里面存的值