前言:此文章为观看tony老师的linux视频整理而来,整理做自己查阅用,如侵必删
liunx命令格式:
命令 [选项] [参数]
注意:个别命令使用不遵循此格式
当有多个选项时,可以写在一起
简化选项与完整选项:-a 等于 --all
显示当前所在位置:pwd
切换目录:cd [目标目录]
简化操作
cd ~ 进入当前用户的家目录 cd
cd - 进入上次目录
cd .. 进入上一级目录
cd . 进入当前目录
查询目录中内容:ls [选项] [文件或目录]
选项:-a 显示所有文件,包括隐藏文件
-l 显示详细信息
-d 查看目录属性
-h 人性化显示文件大小
-i 显示inode
注: -rw-r--r--
- 代表文件类型( - 文件 d 目录 l 软连接文件)(不止这三种,其他为系统文件或硬件文件,不需要掌握)
剩下的三个为一组,代表用户的操作权限,第一组为u所有者的操作权限,第二组为g所属组,第三组为o其他人
r读 w写 x执行
Ps: -h 通常与 -l 一起使用,单独使用 -h 没有作用
建立目录:mkdir -p [目录名]
-p 递归创建
删除空目录:rmdir [目录名]
删除文件或目录:rm -rf [文件或目录]
选项:-r 删除目录
-f 强制
复制:cp [选项] [原文件或目录] [目标目录]
选项:-r 复制目录
-p 连带文件属性复制
-d 若原文件是链接文件,则复制链接属性
-a 相当于 -pdr
注:-p 及 -a 不能连带inode一起复制 inode是独一无二的,只能通过链接
剪切或改名:mv [原文件或目录] [目标目录]
注:mv命令操作目录不需要 -r
链接:ln -s [原文件] [目标文件]
选项: -s 创建软链接
软链接和硬链接的区别:
硬链接特征:
1.拥有相同的i节点的存储block块,可以看做是同一个文件
2.可通过i节点识别(相同i节点)
3.不能跨分区(相同block块当然不能跨分区)
4.不能针对目录使用
5.删除原文件该链接仍能使用
软链接特征:
1.类似Windows快捷方式,删除原文件后链接不可以使用
2.软链接拥有自己的i节点和block块,但数据块中只保存原文件的文件名和i节点号,并没有实际的数据文件
3.lrwxrwxrwx l代表软链接,软链接的文件权限都是777,但是具体操作权限由原文件确定
4.修改任意文件,另一个都改变(硬链接也一样)
5.可以针对目录使用
注意!!!创建软链接一定要使用绝对路径!!!
文件搜索命令
locate [文件名]
#在后台数据库中按文件名搜索,搜索速度更快
/var/lib/mlocate
#locate命令所搜索的后台数据库
updatedb
#更新数据库
注:touch命令
touch命令通常用来创建新的空文件,也可以用来把已存在文件的时间标签更新为系统当前的时间(默认方式)
后一种功能不常用,不在此多介绍。
注:locate 的搜索配置文件 为 /etc/updatedb.conf,里面配置了locate命令的搜索范围,whereis和which命令也同样遵守这个配置文件。
搜索命令的命令:whereis [命令名]
#搜索命令所在路径及帮助文档所在位置
选项:-b 只查找可执行文件
-m 只查找帮助文件
which 类似于whereis但是which不会显示帮助文档所在位置,会额外显示命令的别名。
注:whereis和which命令都只能查linux系统命令,不能查shell内置的命令
linux环境变量
find [搜索范围] [搜索条件]
#需要避免大范围搜索,会非常耗费系统资源
#find是在系统当中搜索符合条件的文件名。如果需要匹配,使用通配符匹配,通配符是完全匹配
linux的通配符
* 匹配任意内容
?匹配任意一个字符
[] 匹配任意一个括号内的字符
find /root -iname install.log
#不区分大小写
find /root -user root
#按照所有者搜索
find /root -nouser
#查找没有所有者的文件(用于查找垃圾文件,外来文件(U盘和光盘)和内核产生的文件(proc和sys目录下))
find /var/log/ -mtime +10
#查找10天前修改的文件
# -10 10天内修改的文件
# 10 10天当天修改的文件
# +10 10天前修改的文件
# atime 文件访问时间
# ctime 改变文件属性时间
# mtime 修改文件内容时间
find . -size 25k
#查找文件大小是25KB的文件
# -25k 小于25KB的文件
# 25k 等于25KB的文件
# +25k 大于25KB的文件
注意:搜索MB单位为大写M,搜索KB为小写k,不写默认单位为数据块
find . -inum 262422
#查找i节点是262422的文件
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 [选项] 字符串 文件名
#在文件当中匹配符合条件的字符串
选项:-i 忽略大小写
-v 排除指定字符串
注:如果需要匹配,使用正则表达式匹配,属于包含匹配
帮助命令
man [命令]
#获取指定命令的帮助
小技巧:因为帮助文档过于长,所以我们常常需要对文档内容进行搜索,假如我们需要搜索-d,则输入/-d即可
压缩文件
.zip格式压缩
zip [压缩文件名] [原文件]
#压缩文件
zip -r [压缩文件名] [目录]
#压缩目录
unzip [压缩文件]
#解压缩.zip文件
注意:压缩目录时不要写绝对路径,否则会连同路径一起压缩进压缩文件
.gz格式压缩
gzip [原文件]
#压缩为.gz格式的压缩文件,原文件会消失 ,压缩文件会以原文件名命名,加.gz后缀
gzip -c [原文件] > [压缩文件]
#压缩为.gz格式,原文件保留
gzip -r [目录]
#压缩目录下所有的子文件,但是不能压缩目录
gzip -d [压缩文件] / gunzip [压缩文件]
#解压缩.gz文件(解压后以该压缩文件名命名新文件)
.bz2格式压缩
bzip2 [原文件]
#压缩为.bz2格式,不保留原文件
bzip2 -k [原文件]
#压缩之后保留源文件(注意与gzip区分)
注意:.bzip2不能压缩目录
bzip2 -d [压缩文件] / bunzip [压缩文件]
#解压缩,-k保留压缩文件
打包命令:tar -cvf [打包文件名] [原文件]
选项:-c 打包
-v 显示过程
-f 指定打包后的文件名
tar -xvf [打包文件名]
选项:-x 解打包
tar -zcvf [压缩包名] [原文件]
选项:-z 压缩为.tar.gz格式
-j 压缩为.tar.bz2格式
tar -ztvf [压缩包名]
选项:-t 查看压缩包内容
tar -zxvf [压缩包名]
#解压缩.tar.gz
tar -jxvf [压缩包名]
#解压缩.tar.bz2
注:以上两种压缩可以同时压缩多个文件和目录
关机和重启命令
shutdown [选项] [时间]
选项:-c 取消前一个关机命令
-h 关机 (halt / poweroff / init 0)(这三个不安全)
-r 重启 (reboot)
挂载命令
mount
#查询系统中已经挂载的设备
mount -a
#依据配置文件/etc/fstab的内容,自动挂载
mount [-t文件系统] [-o特殊选项] [设备] [文件名] [挂载点]
选项:-t 文件系统:假如文件系统类型类指定挂载的类型,可以ext3、ext4、iso9660(光盘)等文件系统
-o 特殊选项:可以指定挂载的额外选项
umount [设备文件名或挂载点]