1.查看当前文件权限
ls -l 文件名 (是字母l,不是数字1)
r:可读
w:可写
x:可执行文件
改为可执行文件:chmod +x 文件名
(注意chmod与+之间有空格,+与x没有空格)
2.expr
(1)获取长度:
echo expr length "$str"
str为字符串,加”“是因为str里面可能含有空格
(2)整数表达式
相较于echo,expr可以处理整数也可以处理字符串,而echo只能处理字符串
例如处理a+b,其中a=3,b=4
需要先写两点`,然后在里面写
expr a+b,最后对需要转义的地方进行转义,对需要取值的地方进行取值,对两两部分中间加入空格
expr a+b`
(3)逻辑与和或
与c不同,c的与:&& 或:||
expr的与:& 或: |
3.echo
(1) echo “” 或者是 ‘’
echo+单引号或者是双引号可以输出字符串,如果字符串含有变量,则用双引号,单引号是不可以将变量转义的
(2) echo如果需要输出变量,则需要加上,{}可以在双引号里面,也可以在单双引号外面
(3)help echo查看echo的使用方法
(4)echo -e “”
可以取消”“取消换行\n的转义
(5)echo “” > 文件名
将”“输入到文件中,若没有该文件则新建
4.unset
unset用于删除变量,变量被删除之后变为空串
5.read
read是输入,格式:
read -p 提示信息 -t 输入时间 变量名
6.printf
printf “”
“”里面需要取变量,则用%s,%d等,与c语言一样
7.test
1.man test
2.test命令用exit code返回结果,而不是使用stdout。0表示真,非0表示假。像是c的return,return 0表示正常结束,非0表示异常结束。
而expr是stdout输出
3.test可以判断文件是否存在
test -e 文件
判断文件是否存在
test -f 文件
判断文件是否为文件
4.[]判断符号
[]与test的用法几乎一样
(1)[]里面的每一项都需要加空格,包括中括号和其他项之间也需要加空格
5.if
then
…
elif
then
…
else
…
fi
注意:每一个if和elif都需要加一个then,但else不需要加then
6.()与{}
(1)()是执行命令(2){}是取变量的值
7.ps aux 或者是 top
打开当前所有进程
找到已知文件的PID,然后kill -num PID
按住shift+M可以让进程不再跳动
可以接受num这个进程