Linux02 基础指令
@Aiken 2022
If u want get detail params info go to: http://www.explainshell.com.
tar 压缩命令
linux中主要使用tar来进行文件的打包和解压,如果需要处理zip文件需要额外的支持,在上一章节中已经提到了,该章节压缩文件部分主要介绍tar命令
压缩文件(夹)
1 |
|
解压文件(夹)
1 |
|
批量解压tar
编写脚本批量解压tar文件到对应的文件夹中,这里主要的核心在于脚本的编写,而非tar的package
1 |
|
也可以使用第二种方法:
1 |
|
参考资料:tar压缩解压缩命令详解
文件操作
cd
路径切换
cd
means change directory 切换工作区路径,毋庸置疑是最常使用的指令,基础用法cd {path}
返回上次目录
1 |
|
推荐使用 zjump 能通过z指令快速定位目录,其通过frecency来管理地址优先级,能通过地址的简写,或者最终文件夹的名字快速跳转和定位。
touch
新建
1 |
|
rm
删除
删除文件夹的时候需要-r指定递归删除,最好结合-v看看自己到底删了什么
1 |
|
“rm -f” 强行删除,忽略不存在的文件,不提示确认。(force)
“rm -i” 进行交互式删除,即删除时会提示确认。(interactive)
“rm -r” 将参数中列出的全部目录和子目录进行递归删除。(recursive)
“rm -v” 详细显示删除操作进行的步骤。(verbose)
删除文件夹中的文件,但是不删除文件夹
1 |
|
mv
移动
mv 主要承担了以下两个职责:重命名、移动
1 |
|
实际上name就代表了在系统中的position,所以当nameB可为地址,可以在移动的同时重命名。
建议使用-i
参数强制执行提示功能, 避免意外覆盖文件。
cp
拷贝
1 |
|
- 使用cp -i 强制询问是否覆盖,避免不必要的版本损失
- -R 递归复制目录
ln
软连接
Linux 软连接,类似windows系统中做快捷方式
1 |
|
删除快捷方式只需要rm
即可,切记!!不要-f -v -r。
1 |
|
切换软连接连接的对象
1 |
|
Search 搜索命令
FileType
文件类型查看
1 |
|
可以查看符号连接的源目录
List
Files 列出文件
ls
: list directory contents.
1 |
|
-l
: use a long listing format-s
: print the allocated size of each file, in blocks-t
: sort by time(modify, newest first)-h
: human-readable-r
: reverse order-a
: show all files include those hide
If we want to find file by “pattern”, we donot need grep
we can do like this:
1 |
|
列出文件,也可以使用tree dir/
列出文件夹的层级结构。
查看某个文件夹下文件或者文件夹的个数:参考资料
1 |
|
Find
Files 文件查找
find
: search for files in a directory hierarchy
1 |
|
Grep
Content 格式匹配
Linux grep 命令用于查找文件里符合条件的字符串。
grep 指令用于查找内容包含指定的范本样式的文件,如果发现某文件的内容符合所指定的范本样式,预设 grep 指令会把含有范本样式的那一列显示出来。若不指定任何文件名称,或是所给予的文件名为 -,则 grep 指令会从标准输入设备读取数据。
通过grep在命令行中筛选输出显示,只显示grep指定的部分。
1 |
|
直接使用Grep搜索文档中的字符数据,
1 |
|
Option:
-v 反向搜索,搜索不匹配该模式的行
-n 显示所在的行的行号
-c 显示有多少匹配到了
-e 来指定多个匹配模式grep -e p1 -e p2file1
-r 递归搜索
-i 忽略大小写
-I 忽略二进制文件
-w, word-regexp
“或” 搜索:
1 |
|
History
Command 历史命令查询
HISTORY主要针对如何找到历史指令,如何重复执行某一行指令;
1 |
|
CTRL+r : Reverse Cmd Searching
命令行反向搜索模式,方便输入重复的指令和地址,其会根据当前的键入内容去匹配历史指令。
Check 系统状态查看
系统时间显示
date "+format"
通过在+号的后面指定 format 来约束输出时间的样式,具体格式可以参考网站
网络状态
ifconfig 命令需要先安装 net-tools,直接使用 sudo apt-get install net-tools
安装
1 |
|
netstat
命令用于显示网络连接、路由表、接口状态等网络信息。
1 |
|
-i 显示网卡列表信息
-r 显示路由表信息
-l 列出正在监听的服务
-a 所有连接中的socket
系统磁盘占用
查看文件夹和磁盘的空间占用:explain_shell du
df
命令可以显示目前所有文件系统的可用空间和使用情形
1 |
|
du
查询文件或者当前文件夹的磁盘使用
1 |
|
查看当前目录下文件和文件夹的大小(定位哪里占用空间最大):
1 |
|
系统内存占用
free
命令用于显示当前系统中的内存使用信息,使用 free -h
即可查看。
Watch
监控
将watch加在前面可以监控一些信息的实时变化
1 |
|
Cat
File(more、less、nl)
cat是显示文本文件中所有数据的得力工具,但是文件的文本会在显示器上一晃而过,难以控制后面的操作。
1 |
|
- -n 给所有的行加上行号
- -b 给非空行加上行号
- -T 不显示制表符
more会显示文本文件的内容,但是会在每页数据之后停下来,使用spc/enter翻页,q退出
less来自 less is more,是 more 的升级版,可以实现文件的前后移动和高级搜索功能。
nl 命令式再 linux 中用来计算文件的行号,其会计算出每一个非空行(可以控制是否忽视)的行号,加在改行的前面输出改行,参考:每天一个linux命令(11):nl命令
Head
Doc(Tail)
1 |
|
只显示命令行输出的前几条或者后面几条
1 |
|
实时查看正在写入的文件 -f
1 |
|
ps
进程操作
ps 的英文全称为:process,主要用来查看系统中的进程状态,参数的主要参考资料:explain ps
1 |
|
-a
显示所有进程(-e同上)-N
显示与指定参数不符的所有进程-u
显示用户即 其他详细信息-x
显示没有控制终端的进程
其他进程操作命令
pstree
命令则可以结合ps
命令,可用树状图的形式显示进程之间的关系。top
命令用于动态地监视进程的活动以及系统的负载pidof
命令可以查看指定服务进程的 PID 号码killall
复杂的服务进程可能会有多个 pid 进程号,killall 可以批量的终结指令
Sleep 暂停
sleep t
引入一段时间的暂停
Linux02 基础指令