linux实用指令
帮助指令
1.man
查找函数的详细帮助文档,获得帮助信息
1 | man ls |
2.help
获得shell内置命令的帮助信息
1 | help cd |
文档目录类
1.pwd
显示当前工作目录的绝对路径
2.ls
显示目录或者文件
- 常用选项
- -a:显示当前目录的所有文件和目录,包括隐藏的
- -l:以列表的方式显示信息
- -al:以列表的方式显示信息
3.cd
切换到指定目录
常用选项
绝对路径/相对路径
1
21. 绝对路径:/home 即从根目录开始定位
2. 相对路径: ../home 从当前工作目录开始定位到需要的目录中去
- cd ~或者cd 回到自己的家目录
- cd .. 回到当前目录的上一级目录
4.mkdir
创建目录
1 | mkdir /home/dog |
- 常用选项
- -p 创建多级目录用
1
mkdir -p /home/cat/cat1
5.rmdir
删除目录
1 | rmdir /home/dog |
- 说明
- 不能删除非空目录
- 删除非空目录 则 rm -rf /home/cat
6.touch
创建空文件
1 | touch hello.txt |
- 说明
- 一次性创建多个文件 空格间隔
1
touch hello.txt hello1.txt
7.cp
拷贝到指定目录 -- cp [参数] 源目录 目标目录
- 常用选项
-r 递归拷贝文件夹
1
2
3cp -r aaa/ bbb/
cp -r hello.txt bbb/\cp 强制覆盖 当目标目录有同名文件强制覆盖操作
1
\cp -r aaa/ bbb/
- 说明
强制覆盖的时候,有同名的会覆盖不同名则会复制
8.rm
删除文件或文件夹
- 常用选项
- -r:递归删除整个文件夹
- -f:强制删除不提示
1 | rm -rf aaa/ |
9.mv
移动文件目录或者重命名
1 | mv hello.txt good.txt 重命名 |
- 说明
移动如果当前目录有这个文件则会认为是重命名
如果没有则认为是移动相当于windows中的剪切
10.cat
查看文件内容
cat [选项] 文件名
1 | cat -n /etc/profile | more |
- 常用选项
- -n :显示行号
- 说明
|more 分页显示
11.more
基于vi编辑器的文本过滤器,它以全屏的方式按页显示文本
- 常用选项
- 空格翻页
- ctrl+b 向上滚动一屏
- ctrl+f 向下滚动一屏
- = 输出当前行号
- :f 输出文件名和当前行号
12.less
跟more类似,但是并不是整个加载后显示,根据需要显示
1 | less book.txt |
- 常用选项
- 空格 向下翻页
- pagedown /pageup 翻页
- /字串 向下查找关键字
- ?子串 向上查找关键字
- q 退出文档
13.>指令和>>指令
> 输出重定向(覆盖)
>> 追加
- 基本语法
- ls -l>文件 (功能描述:列表中的内容写入文件a.txt中(覆盖写))
- ls -al>>文件 (功能描述:列表中的内容追加到文件aa.txt的末尾)
- cat 文件1>文件2 (将文件1的内容覆盖到文件2)
- echo “内容”>>文件
- cal > a.txt(覆盖)
- cal >> a.txt(尾部追加)
14.echo
输出内容到控制台
- 语法
echo [选项] 输出内容 - 应用实例
- 输出环境变量:echo $PATH
- 输出hello world: echo hello word.
15.head
显示文件开头几行的内容
1 | head -n 5 hello.txt |
16.tail
用于输出文件尾部的几行
- 基本语法
- tail 文件 (功能:查看文件后10行内容)
- tail -n 5 文件 (功能描述,查看文件后5行的内容)
- tail -f 文件 (功能描述:实施追踪该文件所有更新)重点
17.ln
创建软连接,也叫符号链接,类似window中的快捷方式
- 基本语法
- ln -s [源文件或者目录][软链接名]
- 应用实例
- 创建root的软连接
1
ln -s /root linktoroot
- 注意
删除的时候一定不要加/ 例如linktoroot/
这样会把目录下的文件都删掉不是删除这个快捷方式
18.history
查看执行过的历史命令
- 案例
查看所有历史指令
1
history
查看最后10条指令
1
history 10
执行历史第5条历史指令
1
!5
文件目录类
1.date
显示当前日期
- 参数
- date 显示时间信息 2019年 07月 24日 星期三 18:14:32 CST
- date “+%Y-%m-%d” 2019-07-24
- date -s “2018-11-11 11:22:22” 设置时间
2.cal
查看日历
搜索查找类
1.find
- 语法
find [搜索范围] [选项] - 选项说明
- -name <查询方式>
- -user<用户名>
-size<文件大小>
按照文件名查找/home目录下的hello.txt文件
1
find /home -name hello.txt
按照拥有者查找/home目录下,用户名为root的文件
1
find /home -user root
查找整个linux系统下大于20兆的文件(+n大于 -n小于 n等于)
1
find / -size +20M
查找整个linux系统下.txt文件
1
find / -name *.txt
2.locate
快速定位文件路径
- 语法
locate 搜索文件 - 特别说明
在第一次运行之前,必须使用updatedb指令创建locate数据库
1 | updatedb |
压缩解压类
1.grep指令和管道符 |
- 语法
grep [选项] 查找内容源文件 常用选项
- -n 显示匹配行及行号
- -i 忽略字母大小写
- 案例
1.在hello.txt中查找yes所在行,并显示行号1
2
3cat hello.txt | grep -n yes
cat hello.txt | grep -i yes
cat hello.txt | grep -n -i yes
2.gzip/gunzip
gzip 用于压缩文件 gunzip用于解压缩
- 语法
gzip 文件 (只能将文件压缩为gz)
gunzip 文件.gz
1
2gzip hello.txt
gunzip hello.txt.gz
3.zip/unzip
zip用于压缩文件,unzip用于解压
- 语法
zip [选项] 文件名
unzip [选项] 文件名 - 选项
- zip
- -r 递归压缩
- unzip
- -d<目录>:指定解压后的目录
案例
将/home下的文件压缩成mypackage.zip
1
zip -r mypackage.zip /home/
将mypackage.zip 解压到/opt/tmp目录下
1
unzip -d /opt/tmp/ mypackage.zip
4.tar
tar指令是打包指令,最后打包后的文件是.tar.gz的文件
- 基本语法
tar [选项] XXX.tar.gz - 选项
- -c 产生.tar的打包文件
- -v 显示详细信息
- -f 指定压缩后的文件名
- -z 打包同时压缩
- -x 解包。tar文件
实例
压缩多个文件a.txt b.txt 压缩成为a.tar.gz
1
tar -zcvf a.tar.gz a.txt b.txt
将home文件夹整体打包成myhome.tar.gz
1
tar -zvcf myhome.tar.gz /home/
将a.tar.gz解压到当前目录
1
tar -zxvf a.tar.gz
将a.tar.gz解压到aaa目录下
1
2tar -zxvf a.tar.gz -C aaa
//-C 必须要有否则报错