Linux 常用命令
命令格式
命令 [选项] [参数]
- # 超级用户的提示符
- $ 普通用户的提示符
查询目录内容
ls [选项] [文件或者目录名]
ls
-a # 显示所有文件
-l # 显示详细信息 等于 ll命令
-d # 查看目录属性
-h # 人性化显示文件大小
-i # 显示inode
# d rwx --- --- . 3 test test 111 6月 9 04:12 test
# 目录 所有者权限 所属组权限 其他人权限 ACL权限 引用计数 所有者 所属组 文件大小 最进修改时间 目录名称
-
文件、d
目录、l
软链接文件u
所有者、g
所属组、o
其他人r
读、w
写、x
执行。
目录处理命令
创建目录
mkdir -p [目录名]
mkdir -p dir/document # 递归创建
切换目录
cd [目录]
cd / # 进入根目录
cd ~ # 进入当前用户的家目录
cd # 进入当前用户的家目录
cd - # 进入上次目录
cd .. # 进入上级目录
cd . # 进入当前目录
查询所在目录位置
pwd
pwd # 显示当前目录 print working directory
删除空目录
rmdir [目录名]
rmdir [目录名] # 仅能删除空目录 remove empty directory
文件处理命令
删除文件或目录
rm -rf [文件或目录]
rm [文件名] # 删除文件
rm -r [目录名] # 删除目录
-f # 强制force
复制命令
cp [选项] [原文件或目录] [目标目录]
cp
-r # 复制目录
-p # 连带文件属性复制
-d # 若原文件为链接文件,则复制链接属性
-a # 相当于-pdr
剪切或改名命令
mv [原文件或目录] [目标目录]
- 移动文件或者文件夹
- 可用于改名,如果原文件和目标文件在同一个目录
链接命令
ln -s [原文件] [目标文件]
ln -s # 生成软链接
- 硬链接特征
- 拥有相同的i节点和存储 block 块,可以看作是同一个文件
- 可以通过 i 节点识别
- 不能跨分区
- 不能针对目录使用
- 软链接特征
- 类似于 Windows 快捷方式
- 软链接拥有自己的 I 节点和 block 块,但是数据块中只保存原文件的文件名和 I 节点号,并没有实际的文件数据
lxwrxwrxwr
为软链接的权限(真正权限依赖于原文件的权限)- 修改任意文件,另一个都改变
- 删除原文件,软链接不能使用
- 写软链接时如果原文件不写绝对路径,那么原文件和目标文件必须在同一级目录下
文件搜索命令
文件搜索命令locate
- 在后台数据库中按文件名搜索,速度快
- /var/db/locate.database 数据库,一天一更新
- /etc/locate.rc 配置文件
- updatedb 更新数据库
命令搜索命令whereis和which
whereis
-b # 只看可执行文件
-m # 只看帮助文档
which # 类似于whereis,查看命令的别名
文件搜索命令
find [搜索范围] [搜索条件]
- 速度慢,完全匹配
*
匹配任意字符?
匹配一个字符[]
任意一个中括号里面的一个字符
find
/ -name '*.log'
-iname # 忽略大小写
-user root
-nouser # 查找没有所有者的文件
-mtime
+ 10 # 查找十天前的文件
- 10 #查找时间内的时间
10 # 十天当天
-atime # 文件访问时间
-ctime # 改变文件属性
-size
[+-] 25k # 文件大小
[+-] 2M
-inum # 根据i节点搜索
-a 与(and)
-o 或(or)
-exec ls -ls {} \ # 给find执行的结果执行命令
搜索字符串命令grep
grep [选项] 字符串 文件名 (在文件当中匹配符合条件的字符串,包含匹配)
grep
-i # 忽略大小写
-v # 排除指定字符串
压缩与解压缩命令
- 常用压缩格式
.zip
,.gz
,.bz2
,.tar.gz
,.tar.bz2
.zip 格式
zip 压缩文件名 源文件 # 压缩文件
zip -r 压缩文件名 源文件 # 压缩目录
unzip 文件名 # 解压缩
.gz 格式
gzip 源文件 # 压缩为.gz格式的压缩文件,源文件会消失
gzip -c 源文件 > 压缩文件 # 压缩为.gz格式, 源文件保留
gzip -r 目录 # 压缩目录下所有的子文件,但是不能压缩目录
gzip -d 压缩文件 # 解压缩文件
gunzip 压缩文件 # 解压缩文件
gunzip -r 压缩文件 # 解压缩目录
.bz2 格式
不能压缩目录, 不保留源文件
bzip2 源文件 # 压缩为.bz2格式, 不保留源文件(不能压缩目录)
bzip2 -k 源文件 # 压缩之后保留原文件
bzip2 -d 压缩文件 # 解压缩,-k保留压缩文件
bunzip2 压缩文件 # 解压缩,-k保留压缩文件
打包命令tar
yum -y install bzip2 # 安装bzip2
tar
-c # 打包
-v # 显示过程
-f # 指定打包后的文件名
tar -cvf longzls.tar longzls # 打包
tar -xvf longzls.tar # 解打包
tar -jcvf 压缩包名.tar.bz2 源文件 # 压缩
tar -jxvf 压缩包名.tar.bz2 # 解压缩
tar -zcvf 压缩包名.tar.gz 源文件 # 压缩
tar -zxvf 压缩包名.tar.gz # 解压缩
tar -jxvf 压缩包名.tar.bz2 -C 目标文件 # 指定解压缩位置
tar -zcvf 压缩包名.tar.gz 源文件 源文件 # 压缩多个目录或者文件
tar -ztvf 压缩包名.tar.gz # 查看压缩文件,不解压缩
清屏命令
clear # clear命令将会刷新屏幕,本质上只是让终端显示页向后翻了一页,如果向上滚动屏幕还可以看到之前的操作信息
Ctrl + l # 小写的L, 等同于clear命令
reset # reset命令将完全刷新终端屏幕,之前的终端输入操作信息将都会被清空,这样虽然比较清爽,但整个命令过程速度有点慢,使用较少
#reset命令在你的终端控制错乱时非常有用。如输入字符不出现在光标的位置的情况。还有当你敲击回车键时,新提示符并没有出现在新行上而是出现在老提示符的前面。此时reset命令就能用来修正这些问题
printf "\ec" 或 printf "\033c" #真正清空终端屏幕, 快速清屏