linux常用命令及其选项

news2024/11/28 6:31:28

1、常用命令

1.1、ls

选项说明
-a显示所有文件及目录 (包括隐藏文件)
-i显示inode
-A同 -a选项 ,但不列出 "." (目前目录) 及 ".." (父目录)
-l列出信息详细(如文件型态、权限、拥有者、文件大小等)
-R递归显示(若目录下有文件,则以下之文件亦皆依序列出)
-r反序显示(将文件以相反的次序显示)。
-F

符号显示(普通文件不添加后缀,对可执行文件添加*号,为目录添加/号,为符号链接添加@号)

使用ls -F|grep "*"可以查找可执行文件

使用ls -F|grep "/" 可以查找目录
使用ls -F|grep "@" 可以查找软连接

-t按时间排序(从先到后)

1.2、stat

1.2、cd

命令说明
cd /绝对路径

指定绝对路径

cd /根目录
cd ..回到上级目录
cd ~回到用户家目录
cd -

回到上次的目录

1.3、pwd

命令说明
pwd

显示当前路径

pwd -P显示出实际路径(如果当前路径是软链接,显示链接目录的实际路径)

1.4、mkdir

选项说明
-m设置文件模式
-p一次建立多个目录(若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录)

1.5、rm

选项说明
 -f强制删除
-r递归删除
-i交互式删除

1.6、rmdir

删除空目录

1.7、mv

选项说明
-f强制执行
-i 交互式
-b若需覆盖文件,则覆盖前先行备份。 
-u若目标文件已经存在,且源文件比较新,才会更新(update)

1.8、cp

选项说明
-f强制复制
-i交互复制
-l硬链接文件,而不是复制。
-d

复制时保留链接。

注:一般用于复制库文件,以保留链接关系!!!

-p除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。
-R递归复制(复制目录及目录内的所有项目)。
-a此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。其作用等于dpR参数组合。

1.9、touch

新建一个不存在的文件。

1.10、nl

计算文件中行号

选项说明
-ba表示不论是否为空行,也同样列出行号(类似 cat -n)
t如果有空行,空的那一行不要列出行号(默认值)
-nln行号在萤幕的最左方显示;
rn行号在自己栏位的最右方显示,且不加 0 ;
rz行号在自己栏位的最右方显示,且加 0 ;
-w行号栏位的占用的位数

1.10、wc

统计文件字数信息

-c以字节(byte)来计数
-m以字符(char)来计数
-w以词(word)来计数
-l以行(line)来计数
-L显示最长的一行

 当不使用任何选项来运行 wc 命令时,wc 命令输出了四个字段

行数 词数 字节数 文件名称

1.11、chmod

符号模式
uuser(文件拥有者)
ggroup(文件所有者所在组)
oothers(所有其他用户)
aall(所用用户, 相当于 ugo)
Operator说明
+为指定的用户类型增加权限
-去除指定用户类型的权限
=设置指定用户权限的设置,即将用户类型的所有权限重新设置
选项说明
r(读)设置为可读权限
w(写)设置为可写权限
x(执行权限)设置为可执行权限
X(特殊执行权限)只有当文件为目录文件,或者其他类型的用户有可执行权限时,才将文件权限设置可执行
s(setuid/gid)当文件被执行时,根据who参数指定的用户类型设置文件的setuid或者setgid权限
t(粘贴位)设置粘贴位,只有超级用户可以设置该位,只有文件所有者u可以使用该位

1.12、date

选项参数
%s从 1970 年 1 月 1 日 00:00:00 UTC 到目前为止的秒数
%Y 完整年份 (0000..9999)
%m 月份 (01..12)
%d日 (01..31)
%H小时(00..23)
%M 分钟(00..59)
%S 秒(00..61)

1.13、cal

cal [参数][月份][年份]
选项说明
-j显示天数
-y输出整年的日历(默认只输出当月的日历)

1.13、echo

-e开启转义字符
-n不换行

1.14、xargs

将标准输入的参数作为其指定命令。xargs 的标准输入中出现的“换行符、空格、制表符”都将被空格取代。

注:管道无法实现将前面的标准输出作为后面的“命令参数”!!!有些命令只接受命令行参数中指定的处理内容,不从标准输入中获取处理内容。此时就需要用到xargs啦~

选项说明
-0将 NULL 作为分隔符。并将单引号、双引号、反斜线等统统默认为是普通字符。
-ddelim 分隔符,默认的xargs分隔符是空格
-t打印出最终要执行的命令
-n num执行一次使用的参数个数(默认执行所有)
-p当每次执行一个argument的时候询问一次用户。
-E设置逻辑EOF字符串;如果END作为输入行出现,则忽略输入的其余部分(如果指定-0或-d则忽略)  

find命令有一个特别的参数-print0,指定输出的文件列表以null分隔。然后,xargs命令的-0参数表示用null当作分隔符。

还有一个原因,使得xargs特别适合find命令。有些命令(比如rm)一旦参数过多会报错"参数列表过长",而无法执行,改用xargs就没有这个问题,因为它对每个参数执行一次命令。

1.15、alias

命令说明
alias 查看所有别名
alias name查看指定别名
alias [name[=value]]定义别名

注:shell中默认不能使用别名!!!

1.16、unalias

命令说明
unalias -a取消所有别名
unalias name取消定义别名

1.17、time

测量命令的执行时间,或者给出系统资源的使用情况。

命令说明
time 程序Bash的内置命令
\time 程序 time命令(功能比Bash的内置强)

注:如果要执行命令本身而非别名,则需在命令前使用反斜线(\)。

1.18、sleep

睡眠一段时间(默认的单位为秒)。

sleep number[smhd]
选项说明
s表示秒
m表示分钟
h表示小时
d表示天

1.18.1、毫秒级睡眠

使用小数值

sleep 0.003 //睡眠3ms

1.18.2、时间参数组合

sleep 1m 40s //睡眠1分40秒(中间需要有空格分隔)

1.19、ln

创建文件链接。

选项说明
-s软链接(符号链接)
-f强制执行
-n将指向目录的符号链接的目标当作普通文件对待。  

1.20、file

查看文件类型。

选项说明
-b不显示文件名称。
-i输出文件的 MIME 类型字符串。
-F设置输出分隔符
-L直接显示符号连接所指向的文件的类别。
-f <名称文件>指定名称文件,其内容有一个或多个文件名称时,让file依序辨识这些文件,格式为每列一个文件名称。
-z尝试去解读压缩文件的内容。

1.21、dd

用于读取、转换并输出数据。

选项说明
if=文件名输入文件名(默认为标准输入),即指定源文件。
of=文件名输出文件名(默认为标准输出),即指定目的文件。
count=blocks指定块数量。
bs=bytes同时设置读入/输出的块大小为bytes个字节。
ibs=bytes一次读入bytes个字节,即指定一个块大小为bytes个字节。
obs=bytes一次输出bytes个字节,即指定一个块大小为bytes个字节。
skip=blocks从输入文件开头跳过blocks个块后再开始复制。
seek=blocks从输出文件开头跳过blocks个块后再开始复制。
conv=notrunc不截短输出文件

1.22、cut

剪切文件中的数据

注:cut 只擅长处理“以一个字符间隔”的文本内容。 

cut  [-bn] [file]
cut [-c] [file]
cut [-df] [file]
选项说明
-b以字节为单位进行分割。这些字节位置将忽略多字节字符边界,除非也指定了 -n 标志。
-c以字符为单位进行分割。
-d

自定义分隔符,默认为制表符。

 注:cut 只允许间隔符是一个字符。

-f与-d一起使用,指定显示哪个区域。
-n 取消分割多字节字符。仅和 -b 标志一起使用。如果字符的最后一个字节落在由 -b 标志的 List 参数指示的 范围之内,该字符将被写出;否则,该字符将被排除

1.22.1、定位数字的设置  

1)多个定位数字之间还可以用逗号隔开 n1,n2,n3

2)最大定位数 -n

3)最小定位数 n-

1.23、split-切割(拆分)文件

split [-b ][-C ][-][-l ][要切割的文件][输出文件名前缀][-a ]
常用参数描述
-b<字节>指定按多少字节进行拆分,也可以指定 K、M、G、T 等单位。
-<行数>或-l<行数>指定每多少行要拆分成一个文件。
输出文件名前缀设置拆分后的文件的名称前缀,split 会自动在前缀后加上编号,默认从 aa 开始。
-a<后缀长度>默认的后缀长度是 2,也就是按 aa、ab、ac 这样的格式依次编号。
-d指定数字形式的文件后缀

1.24、paste-合并文件的列

将几个文件的相应行用制表符连接起来,并输出到标准输出。

paste [-s][-d <间隔字符>][--help][--version][文件...]
常用参数描述
-d<间隔字符>用指定的间隔字符取代制表符。
-s

串列进行而非平行处理。

1.25、watch

选项说明
-n指定执行间隔(默认间隔为2秒)
-d把变动过的地方高亮显示。

1.26、diff

用于比较文件的差异。

diff file1 file2
符号说明
c有区别
afile2与file1比有新增
dfile2比file1 比有删除

1.27、vi

命令说明
:s/旧内容/新内容/替换。只替换当前行中第一个匹配到的内容
:s/旧内容/新内容/g替换。替换当前行中所有匹配到的内容
:1,$s/旧内容/新内容/g全局替换(第一行到最后一行)。替换所有匹配到的内容
:%s/旧内容/新内容/g

1.28、tr

用于转换或删除文件中的字符。

注:可以使用dd和tr命令生成全ff的文件

1.29、md5sum

用于生成和校验文件的md5值。

选项说明
-b以二进制模式读入文件内容
-t以文本模式读入文件内容
-c根据已生成的md5值,对现存文件进行校验

1.30、sort

选项说明
-n 依照数值的大小排序。
-u去重
-r

降序排序(默认升序)。

-o<输出文件>将排序后的结果存入指定的文件。
-t<分隔字符>指定排序时所用的栏位分隔字符。
-k[ field1[,field2]]按指定的列进行排序。

1.31、read

用于读取值。

1)如果输入的数据数量少于变量的个数,那么多余的变量不会获取到数据,即变量值为空。

2)如果输入的数据数量多于变量的个数,那么超出的数据将都赋值给最后一个变量。

3)如果 read 命令后面没有写任何变量,数据会存放到一个叫作 $REPLY 的变量中。

选项说明
-p输入提示文字
-n输入字符长度限制
-t输入限时
-s隐藏输入内容
-u后面跟fd,从文件描述符中读入,该文件描述符可以是exec新开启的。
-r屏蔽\,如果没有该选项,则\作为一个转义字符,否则\为普通字符。

1.32、expr

1.32.1、书写规则

1) 用空格隔开每个项。

2) 将反斜杠(\)放在 Shell 特殊字符前面。

3) 对包含空格和其他特殊字符的字符串用引号括起来。

1.32.2、四则运算运算

加减乘除

1.32.3、 字符串运算

运算表达式意义
matchmatch STRING REGEXPSTRING 中匹配 REGEXP 字符串并返回匹配
字符串的长度
substrsubstr STRING POS LENGTH从 POS 位置获取长度为 LENGTH 的字符串
indexindex STRING SUBSTR杳找子字符串的起始位置
lengthlength STRING计算字符串的长度

2、查看文件

2.1、cat

常用功能
cat 文件显示文件
cat > 文件创建文件(只能创建新文件,不能编辑已有文件)
cat file1 file2 > file文件合并
选项说明
-n显示行号
-b 和 选项-n 相似,只不过对于空白行不编号。
-s当遇到有连续两行以上的空白行,就代换为一行的空白行。
-v使用 ^ 和 M- 符号,除了 LFD 和 TAB 之外
-E在每行结束处显示 $
-T将 TAB 字符显示为 ^I
-A等价于 -vET
-e等价于"-vE"选项
-t等价于"-vT"选项

2.2、tail

用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。

选项说明
-f 当文件增长时,输出追加的数据; 
-v显示文件名
-c<字节>显示字节数
-n<行数>显示的行数

2.3、head

用来显示文件的开头至标准输出中,默认head命令打印其相应文件的开头10行。 

选项说明
-v 显示文件名
-c<字节>显示字节数
-n<行数> 显示的行数

2.4、more

功能类似 cat ,cat命令是整个文件的内容从上到下显示在屏幕上。 more会以一页一页的显示方便使用者逐页阅读。more会在启动时加载整个文件。

命令参数
+n从笫n行开始显示
-n定义屏幕大小为n行
+/pattern在每个档案显示前搜寻该字串(pattern),然后从该字串前两行之后开始显示
-c从顶部清屏,然后显示
-s当遇到有连续两行以上的空白行时,就替换为一行的空白行。
常用操作
Enter向下n行(默认为1行)。
空格键  向下滚动一屏

Ctrl+B  

返回上一屏
=       输出当前行的行号
:f输出文件名和当前行的行号

2.5、less

less 与 more 类似, less 在查看之前不会加载整个文件。

2.6、od

od 命令是一个用于显示文件内容的工具,它可以以多种格式(如八进制、十进制、十六进制、ASCII编码等)显示文件内容。

-c以字符方式显示文件,不显示十六进制数据。
-d  以有符号十进制整数方式显示文件。
-f以浮点数方式显示文件。
-h以十六进制方式显示文件。
-s从指定偏移量开始显示文件,可与-n选项合用。
-N仅显示文件的前n个字节,可与-s选项合用。
-A选择以何种基数表示地址偏移(d for decimal, o for octal, x for hexadecimal or n for none)
-w设置每行显示的字节数,BYTES 缺省为 32 字节

2.7、hexdump

3、查找相关

3.1、which

 会在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。

3.2、find

选项说明
-name name,文件名称符合 name 的文件。
-iname name 文件名称符合 name 的文件(忽略大小写)。
-type 文件类型

d: 目录

c: 字型文件

b: 块文件

p: 管道

f: 一般文件

l: 符号链接

s: socket

-size n文件大小 是 n 单位
-atime n 在过去n天内被读取过的文件
-ctime n 在过去n天内被修改过的文件

3.3、whereis

该指令只能用于查找二进制文件、源代码文件和man手册页,一般文件的定位需使用locate命令。

选项说明
-b只查找二进制文件
-m只查找说明文件
-s只查找原始代码文件。

注:和find相比,whereis查找的速度非常快,这是因为linux系统会将 系统内的所有文件都记录在一个数据库文件中,当使用whereis和locate时,会从数据库中查找数据,而不是像find命令那样,通过遍历硬盘来查找。 但是该数据库文件并不是实时更新,因此,在用whereis和locate 查找文件时,有时会找到已经被删除的数据,或者刚刚建立文件,却无法查找到,原因就是因为数据库文件没有被更新!!!

3.4、locate

用于查找符合条件的文档,他会去保存文档和目录名称的数据库内,查找合乎范本样式条件的文档或目录。

注:locate 与 find 不同: find 是去硬盘找,locate 只在 /var/lib/slocate 资料库中找。

4、网络相关

4.1、ping

选项说明
-c<次数>设置完成要求回应的次数。
-i<间隔秒数>指定收发信息的间隔时间。
-s<数据包大小>设置数据包的大小。
-t<数值>设置TTL的大小。

4.2、scp

scp [参数] [原路径] [目标路径]
选项说明
-r递归复制整个目录
-P portport是指定数据传输用到的端口号
-p保留原文件的修改时间,访问时间和访问权限。
-1强制scp命令使用协议ssh1
-2强制scp命令使用协议ssh2
-4强制scp命令只使用IPv4寻址
-6强制scp命令只使用IPv6寻址

4.3、netstat

4.4、ss

ss命令可以用来获取socket统计信息,它可以显示和netstat类似的内容。但ss的优势在于它能够显示更多更详细的有关TCP和连接状态的信息,而且比netstat更快速更高效。

-s显示套接字使用概况
 -a显示所有套接字
-t仅显示 TCP套接字
-u仅显示 UCP套接字
-w仅显示 RAW套接字
-x仅显示 Unix套接字
-p显示使用套接字的进程

4.5、traceroute

4.6、route

4.7、ifconfig

ifconfig wlan0 up

5、进程相关

5.1、kill

选项说明
-l列出所有信号
-信号  进程PID向进程发送信号

5.2、killall

用来结束同名的的所有进程

-信号  进程名向进程发送信号

5.3、ps

一般使用如下命令即可:

-a显示由其他用户所拥有的进程的状态

-x显示没有控制终端的进程状态

-j显示与作业有关的信息(会话ID、进程组ID、控制终端、终端进程组ID)

-u指定用户的所有进程

在ps的输出中,内核守护进程的名字出现在方括号中

ps aux
ps -ef

5.4、nohup

用于在系统后台不挂断地运行命令,退出终端不会影响程序的运行。

注:一般搭配&一起使用。

6、系统资源

6.1、top

选项说明
-i<时间>设置间隔时间
-n<次数>循环显示的次数
操作
1在top基本视图中,按键盘数字“1”,可监控每个逻辑CPU的状况:
2敲击键盘“b”(打开/关闭加亮效果),运行态(runing)的那个进程,可以通过敲击“y”键关闭或打开运行态进程的加亮效果。
3 敲击键盘“x”(打开/关闭排序列的加亮效果) 

6.2、uptime

显示系统已经运行了多长时间,它依次显示下列信息:当前时间、系统已经运行了多长时间、有多少登陆用户、系统在过去的1分钟、5分钟和15分钟内的平均负载。

6.3、du

用于显示目录或文件的大小。

选项说明
-h以K,M,G为单位,提高信息的可读性。
--block-size=SIZE按大小缩放;
-s计算总和
-c除了显示个别目录或文件的大小外,同时也显示所有目录或文件的总和。
--max-depth=<目录层数>控制深度。超过指定层数的目录后,予以忽略。
-a

显示目录中所有文件的大小。

注:默认情况下,du 命令只会关心文件夹,输出的都是文件夹的空间使用量,而不会关注单个文件。

--exclude过滤指定的目录或文件。
单位
1如果通过 --block-size 选项设置了块大小,则会成为du 输出信息的单位。
2假如上一条没满足,且设置了环境变量 DU_BLOCK_SIZE,则会成为du 输出信息的单位。
3假如上两条都没满足,且设置了环境变量 BLOCK_SIZE,则这会成为du 输出信息的单位。
4假如前三条都没满足,且设置了环境变量 BLOCKSIZE,则这会成为du 输出信息的单位。
5假如前四条都没满足,且开启了环境变量 POSIXLY_CORRECT,则 du 输出信息的单位会是 512bytes。
6假如前面的五条都没满足,那么 du 的输出信息的单位就是 1024 bytes。

6.4、df

用于显示目前在 Linux 系统上的文件系统磁盘使用情况统计。

df -h

6.5、free

显示内存使用情况。

选项说明
-b以Byte为单位显示内存使用情况。 
-k以KB为单位显示内存使用情况。
-m以MB为单位显示内存使用情况。
-g以GB为单位显示内存使用情况。
-s<间隔秒数>  持续观察内存使用状况。 

6.8、who

用于显示系统中有哪些使用者。显示的内容包含了使用者 ID、使用的终端机、从哪边连上来的、上线时间、呆滞时间、CPU 使用量、动作等等。

选项说明
-H显示各栏位的标题信息列

6.9、whoami

用于显示自身用户名称。

7、压缩

7.1、gzip

gzip命令是.gz文件的压缩程序。只能针对普通文件进行压缩和解压,对于文件夹、符号链接等是不支持的!!!

注:gzip命令在压缩过程中,不保留原始文件。

gzip 文件
选项说明
-d解压缩文件
-c把压缩的内容输出到标准输出
-<压缩效率>压缩效率是一个介于1-9的数值,预设值为"6",指定越大的数值,压缩效率就会越高(压缩需要的时间也更久)。
-v显示指令执行过程
-l列出压缩文件的相关信息

7.1.1、与tar结合使用

命令说明
tar -xzvf 压缩文件.tar.gz解压拆包
tar -czvf 压缩文件.tar.gz 源文件打包压缩
tar -tzvf 压缩文件.tar.gz不解压,看看内容

7.2、bzip2

bzip2命令是.bz2文件的压缩程序。只能针对普通文件进行压缩和解压,对于文件夹、符号链接等是不支持的!!!

注:bzip2命令在压缩过程中,不保留原始文件。

bzip2 文件
选项说明
-d解压缩文件
-c把压缩的内容输出到标准输出
-v显示指令执行过程
-t测试.bz2压缩文件的完整性

7.2.1、与tar结合使用

命令说明
tar -xjvf 压缩文件.tar.gz解压拆包
tar -cjvf 压缩文件.tar.gz 源文件打包压缩
tar -jtvf 压缩文件.tar.gz不解压,看看内容

7.3、zip

zip 命令在压缩过程中,会保留原始文件。

zip 压缩文件.zip  文件
选项说明
-r递归处理,将指定目录下的所有文件和子目录一并处理。
-v 显示指令执行过程或显示版本信息。
-d从压缩文件内删除指定的文件。

7.4、unzip

用于解压缩zip文件

选项说明
-d指定解压目录
-v 不解压,只想查看内容
-t检查压缩文件是否正确。
-l显示压缩文件内所包含的文件

8、开发常用

8.1、history

查看和执行历史命令.

命令说明
history查看和执行历史命令

history -c;

history -w

删除所有的历史命令

history -c//删除的只是 Linux 系统内存中的历史命令
history -w//作用就是用内存中的历史命令覆盖 .bash_histroy 文件的内容

8.1.1、定位命令

方法说明
叹号定位法使用!值来定位指定命令
搜索定位按下 Ctrl+r 快捷键后,进入了反向搜索状态,此时输入字符,系统会找到最近一个包含这个字符的命令,再次按下 Ctrl + R,会继续向前搜索。

8.1.2、history的配置

指令说明
export HISTTIMEFORMAT='%F %T '设置历史记录的时间
export HISTSIZE=数量设置内存中的history命令的个数
export HISTFILESIZE=数量设置文件中的history命令的个数
export HISTFILE=存储文件历史命令的存储位置
export HISTCONTROL=erasedups清除整个命令历史中的重复条目
export HISTCONTROL=ignoredups忽略记录命令历史中连续重复的命令
export HISTCONTROL=ignorespace忽略记录空格开始的命令
export HISTCONTROL=ignoreboth等价于ignoredups和ignorespace

8.1.3、不保留记录

方法说明
方法1

当使用这种方式时,以空格开头的命令将不被保留记录。

1)设置 HISTCONTROL 环境变量:export HISTCONTROL=ignorespace。

2)输入命令时,在输入命令前加上空格。

方法2

当使用这种方法时,所有的命令都不保留。

1)设置 HISTIGNORE 环境变量 export HISTIGNORE=*

注:可以使用此方法来保护重要的命令不被别人所看到。输入命令前先export HISTIGNORE=*,输入命令后再export HISTIGNORE= 。

8.2、tmux

分屏管理工具。

8.2.1、会话操作

Session操作说明
新建会话
tmux new 新建默认名称会话
 tmux new -s 会话新建指定名称会话
分离会话
Ctrl+B d 分离当前会话
Ctrl+B D  分离指定会话
连接会话
tmux a连接上一个会话
tmux a -t连接指定会话
tmux ls显示会话列表
重命名
tmux rename -t 旧会话名  新会话名重命名会话
Ctrl+B $重命名当前会话
关闭
tmux kill-server关闭所有会话
tmux kill-session关闭上次打开的会话
tmux kill-session -t 会话关闭会话
tmux kill-session -a -t s1关闭除s1外的所有会话
切换
Ctrl+B s列出所有会话

 2.1.2、窗口操作

window操作说明
打开/关闭
Ctrl+B c创建一个新窗口
Ctrl+B &关闭当前窗口
tmux kill-window -t 窗口号关闭指定窗口
切换
Ctrl+B l进入之前操作的窗口
Ctrl+B p切换到上一个窗口
Ctrl+B n切换到下一个窗口
Ctrl+B 窗口号使用窗口号切换窗口(0~9)
Ctrl+B w列出所有窗口,进行切换
Ctrl+B '切换至指定编号的窗口(可大于9)
修改
Ctrl+B ,重命名当前窗口,便于识别各个窗口
Ctrl+B .  修改当前窗口索引编号

2.1.3、面板操作

Panel操作说明
Ctrl+B z放大当前窗格(再次按下将还原)
打开/关闭
Ctrl+B % 横向分Terminal(左右)
Ctrl+B " 纵向分Terminal(上下)
Ctrl+B x关闭当前窗格
切换
Ctrl+B 方向键自由选择各面板
布局
Ctrl+B q显示面板编号
Ctrl+B 空格键重新排列当前窗口下的所有窗格
Ctrl+B }与下一个窗格交换位置

Ctrl+B {

与上一个窗格交换位置
Ctrl+B Ctrl+o逆时针旋转当前窗口的窗格

9、grep查找

9.1、grep

选项参数
--color高亮查找的字符串
-c计算符合样式的列数。
-v显示不包含匹配文本的所有行。
-n显示行号。
-A<显示行数>显示后几行。
-B<显示行数>显示前几行。
-C<显示行数>显示前后几行。
-i忽略大小写
-f从文件中获取PATTERN
-l列出文件内容符合指定的样式的文件名称。
-L列出文件内容不符合指定的样式的文件名称。
-w

全词匹配

注:在正则表达式中,通常用尖括号表示一个“词”(使用\<\>来准确匹配)

-E

将样式视为拓展正则表达式。

注:等价于egrep

-F

将样式视为固定字符串的列表。

注:等价于fgrep

9.2、egrep

grep 的正则表达式是基本正则表达式,而 egrep 的正则表达式是扩展正则表达式。

9.3、fgrep

grep 和 egrep 都支持正则表达式,但 fgrep 却不支持正则表达式。

注:当搜索字符串中包含了特殊字符,而这些特殊字符恰好又是正则表达式预留的字符,比如说“^”、“$”等时,就可以使用 fgrep 来避免烦琐的转义了。

9.4、grep、egrep、fgrep的关系

命令正则类型
grep基本正则表达式
egrep拓展正则表达式
fgrep/

9.5、pgrep

用来查找进程的信息,通常会和kill命令来连用,在指定条件下kill问题进程。

选项说明
-l同时显示进程名和PID
-o当匹配多个进程时,显示进程号最小的那个
-n当匹配多个进程时,显示进程号最大的那个

10、sed  

sed 基础教程 - sed 基础教程 - 简单教程,简单编程

sed [option] [sed-command] [input-file]

10.1、范围设定

指定行数比如‘3,5’表示第 3行到第5行;而‘5,$’表示第 5 行至文件最后一行。
模式匹配比如/^[^dD]/表示匹配行首不是以 d 或 D 开头的行。

10.2、选项

选项说明
-e多点编辑。-e选项的后面要立即接 command内容,不允许再夹杂其他选项(按照在命令中的先后顺序执行)。
-f指定这个文件作为sed 命令的 command 部分
-n仅显示模式缓冲区的内容
-i直接修改文件内容
l显示不可见字符
r读取指定文件的内容。
a新增。
d删除。
c替换。
i插入。
p

打印。

注:通常 p 会与选项n搭配使用

y

逐字替换。

注:s 支持 & 符号和预存储等特性,可以实现更多灵活的替换效果。

s替换,可以搭配正规表示法。
w

保存。将匹配到的内容写入到另一个文件中。

注:如果 file 参数指定的文件不存在,sed 会新建文件。如果 file 参数指定的文件已经存在,sed 会删除原内容。

q使 sed 命令在第一次匹配任务结束后,退出 sed 程序,不再进行对后续数据的处理。

& 字符,在 sed 命令中,它表示的是“之前被匹配的部分”

sed 的预存储技术,命令中被“(”和“)”括起来的内容会被依次暂存起来,存储到 \1、\2…里面。这样你就可以使用‘\N’形式来调用这些预存储的内容了。

10.3、定位行范围

/首/,/尾/

10.4、 数据的搜寻并执行命令

'/搜索的内容/{执行的命令}'

11、awk

12、查看ascii表

man ascii

13、查看Linux内核和发行版本信息

查看内核版本:uname -a

查看发行版:cat /etc/issue

13.1、uname

选项说明
-a显示全部的信息。
-m显示机器类型
-n显示主机名称
-r显示操作系统的发行编号
-s显示操作系统名称
-v显示操作系统的版本

6.7、arch

显示显示机器类型,相当于uname -m

ulimit

pipe的大小和测试的不一样?

IPC

ipcs输出有关System V IPC特性的各种信息,ipcrm则删除一个SYstem V消息队列、信号量或共享内存区。

ipcs -q 消息队列

ipcs -m 共享内存

XXX、/etc目录

/etc/issue 发行版

xxx、/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1804914.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

盘点 2024 Google I/O 中的 Android 方向关键更新

这里写自定义目录标题 前言1. AI 编程助手2. 生成式AI 应用3. 不同屏幕尺寸适配4. 桌面小部件&#xff08;Widget&#xff09;5. 跨设备类型开发6. WearOS & 可穿戴7. Android for Car8. Android TV9. Google Home API10. Kotlin Multiplatform11. Jetpack Compose12. Andr…

C# Excel操作类EPPlus

摘要 EPPlus 是一个流行的用于操作 Excel 文件的开源库&#xff0c;适用于 C# 和 .NET 环境。它提供了丰富的功能&#xff0c;能够轻松地读取、写入和格式化 Excel 文件&#xff0c;使得在 C# 中进行 Excel 文件处理变得更加简单和高效。EPPlus 不需要安装 Microsoft Office 或…

【机器学习基础】Python编程10:五个实用练习题的解析与总结

Python是一种广泛使用的高级编程语言&#xff0c;它在机器学习领域中的重要性主要体现在以下几个方面&#xff1a; 简洁易学&#xff1a;Python语法简洁清晰&#xff0c;易于学习&#xff0c;使得初学者能够快速上手机器学习项目。 丰富的库支持&#xff1a;Python拥有大量的机…

ChatTTS 开源文本转语音模型本地部署、API使用和搭建WebUI界面(建议收藏)

ChatTTS&#xff08;Chat Text To Speech&#xff09;是专为对话场景设计的文本生成语音(TTS)模型&#xff0c;特别适用于大型语言模型(LLM)助手的对话任务&#xff0c;以及诸如对话式音频和视频介绍等应用。它支持中文和英文&#xff0c;还可以穿插笑声、说话间的停顿、以及语…

不确定性+电动汽车!含高比例新能源和多类型电动汽车的配电网能量管理程序代码!

前言 能源供应的可持续性和清洁性是当今世界共同关注的议题&#xff0c;配电网与可再生能源发电相结合&#xff0c;通过多能互补和梯级利用&#xff0c;在不同时空取长补短&#xff0c;提高能源利用率&#xff0c;减少温室气体排放&#xff0c;是解决能源短缺和环境问题的有效…

MicroPython esp32 连接wifi 配网

整体流程&#xff1a; 1&#xff09;开启STA 和 AP 模式 2&#xff09;扫描周围wifi 保存在 变量 wifi_list&#xff08;后面要用到&#xff09; 3) 尝试STA模式连接Wifi&#xff0c;并查寻状态。 4) 如果STA 无法连网&#xff0c;就用AP模式&#xff0c;创建热点。 5&a…

汇编:宏的使用

汇编语言中的宏是用于定义可重复使用的代码块或指令集合的强大工具。宏通过简化代码编写和提高可读性&#xff0c;使得编写和维护汇编程序更加方便&#xff1b;在 MASM&#xff08;Microsoft Macro Assembler&#xff09;中&#xff0c;宏的定义和使用非常常见。以下是对汇编语…

【GD32F303红枫派使用手册】第十一节 ADC-电源电压单通道ADC检测实验

11.1 实验内容 通过本实验主要学习以下内容&#xff1a; ADC的简介 GD32F303 ADC工作原理 查询方式实现ADC单通道采样 11.2 实验原理 11.2.1 ADC原理 我们知道&#xff0c;自然界中有非常多的模拟信号&#xff0c;比如上一节提到的光照强度&#xff0c;还有其他的例如温…

【网络编程开发】10.UNIX套接字域

10.UNIX套接字域 UNIX域套接字是用于在同一台计算机上运行的进程之间进行通信的一种机制。它与传统基于TCP/IP协议栈的套接字不同&#xff0c;UNIX域套接字操作更为高效&#xff0c;因为它避免了网络层的开销&#xff0c;不涉及网络报头、检验和、顺序号等复杂的网络协议处理过…

系统架构设计师重难点知识脑图

大家都知道现在的软考自从变成机考后,越来越难了,教程上的内容不仅全还细,几乎任何内容都有可能考,出题老师主打一个出其不意,比如2024年5月考试,连UML时序图的片段都考,这 种如果看书的话一般都是一瞟而过,而实际工作中又很少会这么严格的去画片段。 所以对于教程上的…

VB7/64位VB6开发工具office插件开发-twinbasic

全新的VB7&#xff0c;twinbasic&#xff0c;支持64位开发&#xff0c;支持EXCEL插件开发&#xff0c;老外连续3年闭关修练终成正果 官方最新版下载&#xff1a;https://github.com/twinbasic/twinbasic/releases 汉化工具用法&#xff1a;把工具和Lang_Tool目录复制到Twinbasi…

C#操作MySQL从入门到精通(15)——分组数据

前言 我们有时候需要对数据库中查询的数据进行分组,所谓分组就是将相同的数据分为一组,本次测试使用的数据库数据如下: 1、分组 分组使用group by关键词,下面的代码的意思是对查询的结果按照student_age进行分组,student_age相同的划分为同一组 string sql = string.E…

C#操作MySQL从入门到精通(16)——使用子查询

前言: 我们在查询数据的过程中有时候查询的数据不是从数据库中来的,而是从另一个查询的结果来的,这时候就需要使用子查询,本文使用的测试数据如下: 1、子查询 下面的代码就是先查询地址是安徽和广西的学生年龄,然后获取年龄对应的姓名 private void button__SubQuery…

windows环境安装多版本jdk与环境切换

1&#xff1a;JDK官网下载 2&#xff1a;安装目录 3&#xff1a;在系统环境变量新添加JAVA_HOME_8和JAVA_HOME_21 4&#xff1a;设置默认使用jdk21&#xff0c;如果需要切换&#xff0c;就更改JAVA_HOME的变量值 5&#xff1a;在环境变量path添加&#xff0c;%JAVA_HOME%\bin和…

10 -每台机器的进程平均运行时间(高频 SQL 50 题基础版)

10 - 每台机器的进程平均运行时间 -- sum(if(activity_type end,timestamp ,-timestamp )) -- 如果activity_type为“end”,值为timestamp&#xff0c;为“start” 为-timestamp&#xff0c;所有数相加end-start -- count(distinct process_id),获取同一机器有几个进行id -- r…

【MYSQL系列】mysql中text,longtext,mediumtext区别

【MYSQL系列】mysql中text,longtext,mediumtext区别 在MySQL数据库中&#xff0c;TEXT、LONGTEXT和MEDIUMTEXT都是用于存储大量文本数据的字段类型。它们之间的主要区别在于可存储的数据大小和性能方面的差异。本文将探讨这些字段类型的特点、使用场景和一些最佳实践。 TEXT类…

PDF分页处理:技术与实践

引言 在数字化办公和学习中&#xff0c;PDF文件因其便携性和格式稳定性而广受欢迎。然而&#xff0c;处理大型PDF文件时&#xff0c;我们经常需要将其拆分成单独的页面&#xff0c;以便于管理和分享。本文将探讨如何使用Python编程语言和一些流行的库来实现PDF文件的分页处理。…

Langchain 新玩法:LangGraph 赋能 RAG Agent,自适应、自校正、Self-RAG

节前&#xff0c;我们组织了一场算法岗技术&面试讨论会&#xff0c;邀请了一些互联网大厂朋友、今年参加社招和校招面试的同学。 针对大模型技术趋势、大模型落地项目经验分享、新手如何入门算法岗、该如何准备面试攻略、面试常考点等热门话题进行了深入的讨论。 汇总合集…

【讯为Linux驱动开发】5.并发与竞争

并发&#xff1a;一个CPU在一个时间片只能执行一个任务&#xff0c;切换速度很快。 并行&#xff1a;双核CPU&#xff0c;真正的同时执行两个任务 并行就是并发的理想情况&#xff0c;统称并发。 【问】Linux在什么情况下产生并发&#xff1f; 1.中断中修改公共资源 2.抢占…

【UML用户指南】-11-对高级结构建模-高级关系

目录 1、依赖&#xff08;dependency&#xff09; 1.1.1、绑定&#xff08;bind&#xff09; 1.1.2、导出&#xff08;derive&#xff09; 1.1.3、允许&#xff08;permit&#xff09; 1.1.4、实例&#xff08;instanceOf&#xff09; 1.1.5、实例化&#xff08;instanti…