Shell脚本 常用命令总结 二

使用 cat 来写文本文件
cat >> filename << "自定义终止命令,如: stop"
> 内容
> stop
 
取字符串总的某一段(cut)
who | cut -c 1-16   输出当前系统的登录用户名,按字符取1-16位
 
在文本文件中查找某个字符串 grep
grep [选项] 模式 [文件名...]
grep /bin/sh /Desktop/study.sh   在study.sh中查找并返回带/bin/sh 的行
grep -n /bin/sh /Desktop/study.sh   在study.sh中查找并返回带/bin/sh 的行  显示行号
grep -v /bin/sh /Desktop/study.sh   在 study.sh中查找并返回 不带 /bin/sh 的行
grep -l /bin/sh /Desktop/*   在 Desktop 目录中查找并返回带/bin/sh的文件名
grep -l -R /bin/sh /Desktop/*   在 Desktop 目录及其子目录中查找并返回带/bin/sh的文件名  -R 是表示也在子目录中查找
 
补充:grep 的一些常用选项的含义
-c  只是输出一些匹配行的计数
-i  不区分大小写
-l  输出包含匹配的字符文件名
-n  显示匹配的行号
-v  显示不饱含匹配的文本所有行
-s  不显示不存在或无匹配文本的错误信息
 
修改文件权限  chmod
chmod [-cfvR] mode file ...
Unix 的文件存取权限分3级:文件拥有者、群组、其他
mode 权限设定字串,格式: [ugoa...][+-=][rwx]...],[,...],
u 表示该文件的拥有者
g 表示与该文件的拥有者属于同一个群体(group)者
o 表示其他以外的人
a 表示这三者皆是
+ 表示增加权限、- 表示取消权限、 =表示唯一设定权限
r 表示可读取、 w 表示可写入、 x 表示可执行
-c 若该文件权限确实已经更改,才显示其更改动作
-f 若该文件权限无法被更改也不要显示错误信息
-v 显示权限变更的详细资料
-R 对目前目录下的所有文件与子目录进行相同的权限变更,即以递归的方式逐个变更
OK,feelling now, everything is in control...
 
chmod -R u+w,a+r,a+x *    当前目录及其子目录下的所有文件进行权限变更,变更为 文件拥有者可读写执行,同组人员可读和运行,其他人员只能运行
 
此外,chmod 也可以用数字来表示权限如 chmod 777 file
chmod --- file
其中 --- 各为一个数字,分别表示User、Group、及Other的权限。
r=4, w=2, x=1
若要rwx属性则为 4+2+1=7, 其他同理。
chmod ug=rwx,o=x file 和 chmod 771 file 同
原文地址:https://www.cnblogs.com/cg-Yun/p/4139452.html