文件操作命令
stat 命令
stat filename 查看文件详细信息命令
cat 命令
cat 命令用来查看文件内容
-A:相当于vET选项的整合,用于列出所有隐藏符号
-E:列出每行结尾的回车符$
-n:显示行号
-T:把Tab用 ^I 显示出来
-v:列出特殊字符
cp 命令
cp 源文件 目标文件 用于复制文件
-a:相当于-dpr选项的集合
-d:如果源文件为软连接(对硬连接无效),则复制出的目标文件也为软连接
-i:询问,如果目标文件已经存在,则会询问是否覆盖
-p:复制后的目标文件保留源文件的属性(包括所有者、所属组、权限和时间)
-r:递归复制,用于复制目录
权限相关
普通用户可以修改所有者是自己的文件的权限
普通用户不能修改文件的所有者(哪怕是文件是属于这个普通用户的),只有超级用户才能修改所有者
umask 默认权限
查看系统umask权限(umask)、(umask -S:用字母表示)
文件的最大默认权限(666)
目录的最大默认权限(777)
/etc/profile 配置文件
man命令
-f:查看命令拥有哪个级别的帮助
-k:查看命令相关的所有帮助
man命令常用快捷键
上箭头 向上移动一行
下箭头 向下移动一行
PgUp 向上翻页
PgDn 向下翻页
g 移动到第一页
G 移动到最后一页
q 退出
/str 从当前页向下搜索字符串
?字符串 从当前页向上搜索字符串
n 查找下一个字符串
N 查找上一个字符串
man -f 或 whatis 命令
#查看命令拥有哪个级别的帮助(建议whatis)
man -k 或 apropos 命令 (不建议使用)
#查看和命令相关的所有帮助
whereis 查看命令在哪儿
whoami 查看登录用户
help 命令
只能过去shell内置命令的帮助
--help选项
绝大多数命令都可以使用 --help 选项来查看帮助
这种方法简单,输出的信息基本上都是man命令的简要版
搜索命令
whereis命令
whereis 是搜索系统命令的命令
which命令
which 也是搜索系统命令的命令
区别whereis:
whereis 命令可以在查找二进制命令的同时,查找帮助文档的位置。
而which命令在查找到二进制命令的同时,如果这个命令有别名,则还可以找到别名的命令
locate命令
locate是只能按照文件名搜索普通文件的命令。
优点:按照数据库搜索,速度快,消耗资源少。数据库位置:/var/lib/mlocate/mlocate.db(updatedb更新数据库)
缺点:只能按照文件名搜索
配置文件 /etc/updatedb.conf
find命令
按照文件名搜索
-name:按照文件名搜索
-iname:按照文件名搜索,不区分文件名大小写
-inum:按照Inode号搜索
按照文件大小搜索
-size [+|-]大小:按照指定大小搜索文件
按照修改时间搜索
-atime [+|-]时间:按照文件访问时间搜索
-mtime [+|-]时间:按照文件修改数据时间搜索
-ctime [+|-]时间:按照文件状态修改时间搜索
按照文件权限搜索
-perm 权限模式:查找文件权限刚好等于权限模式的文件
-perm -权限模式:查找文件权限全部包含权限模式的文件
-perm +权限模式:查找文件权限包含权限模式的任意一个权限的文件
按照所有者和所属组搜索
-uid 用户ID:按照指定用户ID查找所有指定ID的文件
-gid 组ID:按照指定用户组ID查找所属组是指定ID的文件
-user用户名:按照用户名查找所有者是指定用户的文件
-group组名:按照组名查找所属组是指定用户组的文件
-nouser:查找没有所有者的文件
按照所有者和所属组搜索时,“-nouser”选项比较常用,主要用于查找垃圾文件
只有一种情况例外,那就是外来文件。比如光盘和U盘中的文件如果是由Windows复制的,在Linux中查看就是没有所有者的文件;在比如手工源码包安装的文件,也可能没有所有者。
按照文件类型搜索
-type d:查找目录
-type f:查找普通文件
-type l:查找软连接文件
逻辑运算符
-a:and与
-o:or或
-not:not非
其他选项
-exec选项
这个选项是把find命令的结果交给“-exec” 调用命令2来处理,“{}”就代表find命令的查找结果。
find . -name abd -exec ls -alt {} \;
-ok 选项
-ok 选项和“-exec” 选项的作用基本一致,区别在于:“-exec” 的命令2会直接处理,而不询问;“-ok” 的命令2在处理前会先询问用户是否这样处理,在得到确认命令后,才会执行。
grep 命令
-n:显示行号
-v:取反
-i:忽略大小写
通配符
? 匹配任意一个字符
* 匹配0个或任意多个任意字符,也就是可以匹配任何内容
[] 匹配中括号中任意一个字符。例如 [ abc ] 代表一定匹配一个字符,或者是a,或者是b,或者是c
[ - ] 匹配范围中的任意一个字符
[^] 逻辑非,表示匹配不是中括号内的一个字符。例如,[^0-9] 代表匹配不是一个数字的字符
正则表达式
? 匹配前一个字符重复0次或1次(? 是扩展正则,需要使用egrep命令)
* 匹配前一个字符0次或任意多次
[] 匹配括号中任意一个字符。例如,[ abc ] 代表匹配abc其中一个
[ - ] 匹配范围中的任意一个字符
[^] 逻辑非,表示匹配不是中括号内的一个字符。例如,[^0-9] 代表匹配不是一个数字的字符
^ 匹配行首
$ 匹配行尾
netstat命令
-a:列出所有网络状态,包括Socket程序
-c:指定每隔几秒刷新一次网络状态
-n:使用IP地址和端口号显示,不使用域名与服务名
-p:使用PID和程序名
-t:显示使用TCP协议端口的连接状况
-u:显示使用UDP协议端口的连接状况
-l:仅显示监听状态的连接
-r:显示路由表
常用快捷键
TAB 命令补全
ctrl+A 把光标移动到命令行开头
ctrl+E 把光标移动到命令的结尾
ctrl+c 终止
ctrl+l 清屏
ctrl+u 删除或剪切光标之前的命令
ctrl + y 粘贴剪切板的内容
压缩和解压缩命令
zip格式
zip 包名 源文件
-r:压缩目录
unzip -d /tmp/ test.zip
-d:指定解压位置
gz格式
gzip 选项 源文件
-c:将压缩数据输出到标准输出中,可用于保留源文件
-d:解压缩
-r:压缩目录
gunzip 包名 解压缩
gunzip name.gz
gzip -d name.gz
来源:https://www.cnblogs.com/cly0205/p/12290566.html