- ls:查询目录中内容
ls [选项] [文件或目录]
选项:
-a
:显示所有文件,包括隐藏文件-l
:显示详细信息-d
:查看目录属性-h
:人性化显示文件大小-i
:显示inode
End
- mkdir:建立目录
mkdir -p [目录名]
原意:make directories
选项:
-p
:递归创建
End
- cd:切换所在目录
cd [目录]
原意:change directories
简化操作:
cd ~
:进入当前用户的家目录cd
:进入当前用户的家目录cd -
:进入上次目录cd ..
:进入上一级目录cd .
:进入当前目录
End
- pwd:查询所在目录位置
pwd
原意:print working directory
- rmdir:删除空目录
rmdir [目录名]
原意:remove empty directories
- rm:删除文件或目录
rm -rf [文件或目录]
原意:remove
选项:
-r
:删除目录-f
:强制
End
- cp:复制命令
cp [选项] [原文件或目录] [目标目录]
原意:copy
选项:
-r
:复制目录-p
:连带文件属性复制-d
:若源文件是链接文件,则复制链接属性-a
:相当于 -pdr
End
- mv:剪切或改名命令
mv [原文件或目录] [目标目录]
原意:move
- ln:链接命令
ln -s [原文件] [目标文件]
原意:link
选项:
-s
:创建软链接
硬链接特征:
- 拥有相同的i节点和存储block块,可以看做是同一个文件
- 可通过i节点识别
- 不能跨分区
- 不能针对目录使用
软链接特征:
- 类似Windows快捷方式
- 软链接拥有自己的i节点和block块,但是数据块中只保存原文件的文件名和i节点号,并没有实际的文件数据
- 文件权限都为lrwxrwxrwx,其中l是指软链接
- 修改任意文件,另一个都改变
- 删除原文件,软链接不能使用
- locate:文件搜索命令
locate 文件名
在后台数据库中按文件名搜索,搜索速度更快
/var/lib/mlocate
:locate命令所搜索的后台数据库
updatedb
:更新数据库
etc/updatedb.conf
:locate、whereis、which命令的搜索规则配置文件
- PRUNE_BIND_MOUNTS = “yes”:开启搜索限制
- PRUNEFS = :搜索时,不搜索的文件系统
- PRUNENAMES = :搜索时,不搜索的文件类型
- PRUNEPATHS = :搜索时,不搜索的路径
End
- whereis:搜索命令的命令
whereis 命令名
搜索命令所在路径及帮助文档所在位置
选项:
-b
:只查找可执行文件-m
:只查找帮助文档
End
- which:搜索命令的命令
which 文件名
搜索命令所在路径及别名
- find:文件搜索命令
find [搜索范围] [搜索条件]
- 避免大范围搜索,会非常耗费系统资源。
- find是在系统当中搜索符合条件的文件名。如果需要匹配,使用通配符匹配,通配符是完全匹配。
- 通配符:
*
:匹配任意内容
?
:匹配任意一个字符
[]
:匹配任意一个中括号内的字符
- 搜索条件:
-name
:指定文件名,如find /root -name install.log
-iname
:不区分大小写,如find /root -iname install.log
-user
:按照所有者搜索,如find /root -user root
-nouser
:查找没有所有者的文件,如find /root -nouser
-mtime
、-atime
、ctime
:按照最新内容修改日期、最新访问日期、最新文件属性改变日期查找文件
-mtime -10
:10天内修改的文件
-mtime 10
:10天当天修改的文件
-mtime +10
:10天前修改的文件
-size
:按照文件大小查找文件,其中大小单位中,k
是小写,M
是大写,不能不写单位,不写的话默认是块
-size -25k
:小于25KB的文件
-size 25k
:等于25KB的文件
-size +25k
:大于25KB的文件
-inum
:按照i节点查找文件,如find /root -inum 262148
-a 或者 and
:逻辑与,两个条件都满足
-o 或者 or
:逻辑或,两个条件满足一个即可
exec 对find结果处理的命令 {} \;
:对搜索结果执行其他命令,如find /root -name install.log -exec ls -al {} \;
(对结果执行ls -al
命令)
End
- grep:字符串搜索命令
grep [选项] 字符串 文件名
在文件当中匹配符合条件的字符串
选项:
-i
:忽略大小写-v
:排除指定字符串,也就是取反
End
- man:帮助命令
man 命令
原意:manual,获取指定命令的帮助
选项:
-f
:查看命令拥有哪些级别的帮助,相当于whatis 命令
这个命令-级别
:查看命令中指定级别的帮助,如man -5 passwd
-k
:查看和命令相关的所有帮助,相当于apropos 命令
这个命令
man的级别
- 1:查看命令的帮助
- 2:查看可被内核调用的函数的帮助
- 3:查看函数和函数库的帮助
- 4:查看特殊文件的帮助(主要是
/dev
目录下的文件) - 5:查看配置文件的帮助
- 6:查看游戏的帮助
- 7:查看其它杂项的帮助
- 8:查看系统管理员可用命令的帮助
- 9:查看和内核相关文件的帮助
End
- help:shell内部命令帮助
help shell内部命令
区分是否是shell内部命令,使用
whereis 命令
这个命令,如果找不到命令路径,则证明是shell内部命令,当然前提是命令合法可用。
- info:详细命令帮助
info 命令
操作:
回车
:进入子帮助页面(带有*号标记)u
:进入上层页面n
:进入下一个帮助小节p
:进入上一个帮助小节q
:退出
End
- zip:.zip格式压缩命令
zip 压缩文件名 源文件
:压缩文件
zip -r 压缩文件名 源目录
:压缩目录
unzip 压缩文件
:解压缩
- gzip:.gz格式压缩命令
gzip 源文件
:压缩为.gz格式的压缩文件,源文件会消失
gzip -c 源文件 > 压缩文件
:压缩为.gz格式,源文件保留
gzip -r 目录
:压缩目录下所有的子文件,但是不能压缩目录
gzip -d 压缩文件
:解压缩
gunzip 压缩文件
:解压缩
- bzip2:.bz2格式压缩
bzip2 源文件
:压缩为.bz2格式,不保留源文件
bzip2 -k 源文件
:压缩后保留源文件
bzip -d 压缩文件
:解压缩,-k
选项保留源压缩文件
bunzip 压缩文件
:解压缩,-k
选项保留源压缩文件
注意:bzip2命令不能压缩目录
- 查看目录下文件总行数
1 | find . -name "*.java" -or -name "*.xml" -or -name "*.gradle" -or -name "*.properties" |xargs grep -v "^$"|wc -l |
- rsync文件远程同步
1 | rsync -zvrt [源路径] [目标路径] |
远程路径格式:用户名@ip:文件目录
,如myname@gaussli.com:/usr/local/
- MD5校验
1 | md5sum [文件名] |
- tar命令打包目录下部分文件
1 | tar -zcvf [tar名称] `find . |grep -e [只打包文件的名称规则]` |
(•̀ᴗ•́)و ̑̑