一.命令基本格式
-rw-r--r--(-文件 d目录 l软链接文件)
rw- r-- r--
第一部分rw-代表当前用户具有读写的权限。
第二部分的r--代表当前用户所在的用户组中其他成员只有读得权限
最后一个r--表示额外的其他用户只有读得权限。
u所有者 g所属组 o其他人
用户对文件的权限:r读 w写 x执行
ls -l nginx 显示nginx文件下所有包含文件的详细信息
ls -a nginx 显示nginx文件下所有包含文件包括隐藏文件
ls -ld nginx 显示nginx文件夹的详细信息
ls -lh nginx 显示nginx文件下所有文件的详细信息,文件大小按照k,M等显示(能看懂)
二.目录处理命令
建立目录:mkdir
mkdir -p [目录名]
-p 递归创建
命令英文原意:make directories
mkdir test 创建文件test
mkdir -p test1/test2 创建文件test1下test2
切换目录:cd
命令英文原意:change directory
简化操作:
cd ~ 进入当前用户的家目录
cd
cd - 进入上次目录
cd .. 进入上一级目录
cd . 进入当前目录
删除目录:rmdir
命令英文原意:remove empty directories
删除文件或目录:rm
命令英文原意:remove
选项:
-r 删除目录
-f 强制
复制命令:cp
cp 【选项】【原文件或目录】【目标目录】
命令英文原意:copy
选项:
-r 复制目录
-p 连带文件属性复制
-d 若源文件是链接文件,则复制链接属性
-a 相当于-pdr
剪切或改名命令:mv
mv 【原文件或目录】【目标目录】
命令英文原意:move
mv没有-r
常用目录的作用
/跟目录
/bin命令保存目录(普通用户就可以读取的命令)
/boot启动目录,启动相关文件
/dev设备文件保存目录
/etc配置文件保存目录
/home普通用户的家目录
/lib系统库保存目录
/mnt系统挂载目录
/media挂载目录
/root超级用户的家目录
/tmp临时目录
/sbin命令保存目录(超级用户才能使用的命令)
/proc直接写入内存的命令
/sys直接写入内存的命令
/usr系统软件资源目录
/usr/bin系统命令(普通用户)
/usr/sbin系统命令(超级用户)
/var系统相关文档内容
可以在家目录root或home,以及tmp目录下随便放内容
三.链接命令
链接命令:ln
ln -s [原文件][目标文件]
命令英文原意:link
功能描述:生成链接文件
选项:-s 创建软链接
硬链接:同一个存储地址,有不同的名字(教室的前后门)
1.拥有相同的i节点和存储block块,可以看作是同一个文件
2.可通过i节点识别
3.不能跨分区
4.不能针对目录使用
原文件删除不影响硬链接的使用(即把前门堵住,后门也能进)
软链接:
1.类似Windows快捷方式
2.软链接拥有自己的i 节点和block块,但是数据块中只保存原文件的文件名和i节点号,并没有实际的数据
3.lrwxrwxrwx |软链接
软链接文件权限都为rwxrwxrwx
4.修改任意文件,另一个都改变
5.删除原文件,软链接不能使用
原文件删除,影响软链接的使用()
四.文件搜索命令
文件搜索命令locate(比find快,只能搜文件名)
locate 文件名
在后台数据库中按文件名搜索,搜索速度更快
/var/lib/mlocate locate命令所搜索的后台数据库(默认一天一更新,所有搜索不到新建的)
updatedb更新数据库(强制更新数据库)
/etc/updatedb.conf配置文件
命令搜索命令whereis和which
whereis 命令名
搜索命令所在路径及帮助文档所在位置
选项:
-b:只查找可执行文件
-m:只查找帮助文件
which 文件名
搜索命令所在路径及别名
PATH环境变量
PATH环境变量:定义的是系统搜索命令的路径
echo $PATH
文件搜索命令find
find [搜索范围] [搜索条件] 搜索文件
find / -name install.log
避免大范围搜索,会非常耗费系统资源
find是在系统当中搜索符合条件的文件名。如果需要匹配,使用通配符匹配,通配符是完全匹配
Linux中的通配符
* 匹配任意内容
? 匹配任意一个字符
[] 匹配任意一个中括号内的字符
find /root -iname install.log 不区分名称大小写
find /root -user root 按照所有者搜索
find /root -nouser 查找没有所有者的文件(外来文件没有所有者(U盘等),内核文件)
find /var/log/ -mtime +10 查找10天前修改的文件
-10 10天内修改的文件
10 10天当天修改的文件
+10 10天前修改的文件
atime 文件访问时间
ctime 改变文件属性
mtime 修改文件内容
find /root -size 25k
查找文件大小是25KB的文件
-25K 小于25KB的文件
25K 等于25KB的文件
+25K 大于25KB的文件
find /root -inum 26224
查找i节点是26224的文件
find /etc -size +20k -a -size -50k
查找/etc目录下,大于20KB且小于50KB的文件
-a and 逻辑与,两个条件都满足
-o or 逻辑或,两个条件满足一个即可
find /etc -size +20k -a -size -50k -exec ls -lh {} \;(指定格式)
查找/etc/目录下,大于20KB且小于50KB的文件,并显示详细信息
-exec/-ok命令{}\;对搜索结果执行操作
字符串搜索命令grep
grep [选项] 字符串 文件名
在文件当中匹配符合条件的字符串
选项:
-i 忽略大小写
-v 排除指定字符串
grep 'size' a.log(a.log中包含size字符串的内容)
find命令和grep命令的区别
find命令:在系统当中搜索符合条件的文件名,如果需要匹配,使用通配符匹配,通配符是完全匹配
grep命令:在文件当中搜索符合条件的字符串,如果需要匹配,使用正则表达式进行匹配,正则表达式时包含匹配
五.帮助命令
帮助命令man
man 命令 获取制定命令的帮助
man ls 获取ls命令的帮助
man的级别
1:查看命令的帮助
2:查看可被内核调用的函数的帮助
3:查看函数和函数库的帮助
4:查看特殊文件的帮助(主要是/dev目录下的文件)
5:查看配置文件的帮助
6:查看游戏的帮助
7:查看其他杂项的帮助
8:查看系统管理员可用命令的帮助
9:查看和内核相关文件的帮助
查看命令有哪个等级的帮助
man -f 命令 相当于 whatis 命令
man -5 passwd
man -4 null
man -8 ifconfig
查看和命令相关的所有帮助
man -k 命令 相当于 apropos 命令
例如:apropos passwd
六.压缩命令
常用压缩格式:.zip .gz .bz2
常用压缩格式:.tar.gz .tar.bz2
.zip格式压缩
zip 压缩文件名 源文件 压缩文件
zip -r 压缩文件名 源目录 压缩目录
unzip解压缩
unzip 压缩文件 解压缩.zip文件
.gz格式压缩
- gzip 源文件
压缩为.gz格式的压缩文件,源文件会消失
- gzip -c 源文件 > 压缩文件
压缩为.gz格式,源文件保留
例如:gzip -c cangls > cangls.gz
- gzip -r 目录
压缩目录下所有的子文件,但是不能压缩目录
.gz格式解压缩
- gzip -d 压缩文件 解压缩文件
- gunzip 压缩文件 解压缩文件
.bz2格式压缩
- bzip2 源文件 压缩为.bz2格式,不保留源文件
- bzip2 -k 源文件 压缩之后保留源文件
注意:bzip2命令不能压缩目录
.bz2格式解压缩
- bzip2 -d 压缩文件 解压缩,-k保留压缩文件
- bunzip2 压缩文件 解压缩,-k保留压缩文件
打包命令tar
- tar -cvf 打包文件名 源文件
选项:
-c:打包
-v:显示过程
-f:指定打包后的文件名
例如:tar -cvf test.tar test
解压命令tar
- tar -xvf 源文件