共计 5300 个字符,预计需要花费 14 分钟才能阅读完成。
无论你是后端程序员还是前端程序员,都防止不了和 Linux 打交道。上篇介绍了 Linux 罕用的 20 个命令其中的 10 个,本文持续介绍剩下的 10 个命令。
11.man 命令
manual 的缩写,即使用手册的意思,是 Linux 下最外围的命令之一,用来列出一份残缺的阐明
语法格局 : man [参数]
罕用参数 :
参数 | 阐明 |
---|---|
-a | 在所有的 man 帮忙手册中搜寻 |
-f | 显示给定关键字的简短形容信息 |
-p | 指定内容时应用分页程序 |
-M | 指定 man 手册搜寻的门路 |
-w | 显示文件所在位置 |
快捷键:
参数 | 阐明 |
---|---|
q | 退出 |
Enter | 按行下翻 |
Space | 按页下翻 |
b | 上翻一页 |
/ 字符串 | 在手册页中查找字符串 |
参考实例 :
- 查看 printf 函数的应用信息:
[root@wayne:~]# man printf
- 查看 cp 命令的帮忙信息:
[root@wayne:~]# man cp
- 查看 /etc/passwd 文件的信息:
[root@wayne:~]# man /etc/passwd
- 查看 passwd 命令所在位置:
[root@wayne:~]# man -w passwd /usr/share/man/man1/passwd.1.gz
12.grep 命令
用来查找文件里符合条件的字符串或正则表达式,并将其打印进去
语法格局 : grep [参数]
罕用参数 :
参数 | 阐明 |
---|---|
-i | 疏忽大小写进行匹配 |
-c | 只输入匹配行的数量 |
-l | 只列出合乎匹配的文件名,不列出具体的匹配行 |
-n | 列出所有的匹配行,显示行号 |
-r | 递归查找子目录中的文件 |
-v | 只打印不匹配的行 |
参考实例 :
- 在文件 test.txt 中查找字符串 “World”,并打印匹配的行:
[root@wayne:~]# grep World test.txt
- 在当前目录中,查找后缀为 .txt 的文件中,蕴含 World 字符串的文件,并打印出该字符串的行
[root@wayne:~]# grep World *.txt
- 在文件夹 dir 中递归查找所有文件中匹配正则表达式 “pattern” 的行,并打印匹配行所在的文件名和行号
[root@wayne:~]# grep -r -n pattern dir/
- 以递归的形式查找目录 /usr/local 及其子目录下所有文件中蕴含字符串 ”test” 的文件
[root@wayne:~]# grep -r test /usr/local
13.find 命令
用来在指定目录下查找文件
语法格局 : find [参数] [门路] [查找和搜寻范畴]
罕用参数 :
参数 | 阐明 |
---|---|
-name | 按名称查找 |
-size | 按大小查找 |
-user | 按属性查找 |
-type | 按类型查找 |
-iname | 疏忽大小写 |
参考实例 :
- 应用 -name 参数查看 /etc 目录上面所有的.conf 结尾的配置文件:
[root@wayne:~]# find /etc -name "*.conf
- 应用 -size 参数查看 /etc 目录上面大于 1M 的文件:
[root@wayne:~]# find /etc -size +1M
- 在 /home 目录下查找以.txt 结尾的文件名:
[root@wayne:~]# find /home -name "*.txt"
- 找出 /home 下不是以.txt 结尾的文件:
[root@wayne:~]# find /home ! -name "*.txt"
- 在 /var/log 目录下疏忽大小写查找以.log 结尾的文件名:
[root@wayne:~]# find /var/log -iname "*.log"
- 将当前目录及其子目录下所有最近 20 天内更新过的文件列出:
[root@wayne:~]# find . -ctime 20
- 搜寻当前目录中拜访工夫超过 10 分钟的所有文件:
[root@wayne:~]# find . -type f -amin +10
14.chmod 命令
用来扭转文件或目录的权限
语法格局 : chmod [参数] [文件]
罕用参数 :
参数 | 阐明 |
---|---|
-c | 若该文件权限的确曾经更改,才显示其更改动作 |
-f | 若该文件权限无奈被更改也不显示谬误讯息 |
-v | 显示权限变更的详细资料 |
-R | 对目前目录下的所有文件与子目录进行雷同的权限变更 (即以递回的形式一一变更) |
参考实例 :
- 将 file.txt 设为所有人都可读取:
[root@wayne:~]# chmod a+r file.txt
- 将目前目录下的所有文件与子目录皆设为任何人可读取 :
[root@wayne:~]# chmod -R a+r *
- 将 file 设定为只有该文件拥有者能够执行:
[root@wayne:~]# chmod u+x file
- 用数字更改文件权限:
[root@wayne:~]# chmod abc file
其中 a,b,c 各为一个数字,别离示意 User、Group、及 Other 的权限 (rwx)。
- r=4,w=2,x=1
- 若要 rwx 属性则 4+2+1=7;
- 若要 rw- 属性则 4+2=6;
- 若要 r-x 属性则 4+1=5。
15.ps 命令
process status 的缩写,用来显示以后零碎的过程状态
语法格局 : ps [参数]
罕用参数 :
参数 | 阐明 |
---|---|
-A | 列出所有的过程 |
-a | 不与 terminal 无关的所有过程 |
-x | 个别与 a 参数一起应用,可列出较完整的信息 |
-w | 显示加宽能够显示较多的资讯 |
-u | 无效用户的相干过程 |
-l | 较具体地将 PID 的信息列出 |
-aux | 查看零碎所有的过程数据 |
参考实例 :
- 显示所有过程信息:
[root@wayne:~]# ps -A
- 查看零碎所有的过程数据:
[root@wayne:~]# ps -aux
- 查看 root 用户的过程信息:
[root@wayne:~]# ps -u root
- 按 CPU 资源的使用量对过程进行排序
[root@wayne:~]# ps -aux | sort -nk 3
- 按内存资源的使用量对过程进行排序
[root@wayne:~]# ps aux | sort -rnk 4
16.kill 命令
用来删除执行中的程序或工作
语法格局 : kill [参数] [过程号]
罕用参数 :
参数 | 阐明 |
---|---|
-l | 列出零碎反对的信号 |
-s | 指定向过程发送的信号 |
-a | 解决以后过程时不限度命令名和过程号的对应关系 |
-p | 指定 kill 命令只打印相干过程的过程号,而不发送任何信号 |
参考实例 :
- 显示信号:
[root@wayne:~]# kill -l
- 杀死一个过程 ID 为 9523 的过程:
[root@wayne:~]# kill -9 9523
- 从新加载过程 ID 为 1935 的过程:
[root@wayne:~]# kill -SIGHUP 1953
17.netstat 命令
用来显示各种网络相干信息
语法格局 : netstat [参数]
罕用参数 :
参数 | 阐明 |
---|---|
-a | 显示所有连线中的 Socket |
-p | 显示正在应用 Socket 的程序识别码和程序名称 |
-u | 显示 UDP 传输协定的连线情况 |
-i | 显示网络界面信息表单 |
-n | 间接应用 IP 地址,不通过域名服务器 |
参考实例 :
- 显示具体的网络情况:
[root@wayne:~]# netstat -a
- 显示以后用户 UDP 连贯情况:
[root@wayne:~]# netstat -nu
- 显示网卡列表:
[root@wayne:~]# netstat -i
- 显示组播组的关系:
[root@wayne:~]# netstat -g
- 显示网络统计信息:
[root@wayne:~]# netstat -s
- 显示监听的套接口:
[root@wayne:~]# netstat -l
18.ping 命令
用来测试主机之间网络的连通性
语法格局 : ping [参数] [指标主机]
罕用参数 :
参数 | 阐明 |
---|---|
-d | 应用 Socket 的 SO_DEBUG 性能 |
-c | 指定发送报文的次数 |
-i | 指定收发信息的间隔时间 |
-I | 应用指定的网络接口送出数据包 |
-l | 设置在送出要求信息之前,后行收回的数据包 |
-n | 只输入数值 |
-p | 设置填满数据包的范本款式 |
-q | 不显示指令执行过程 |
-R | 记录路由过程 |
-s | 设置数据包的大小 |
-t | 设置存活数值 TTL 的大小 |
-v | 具体显示指令的执行过程 |
参考实例 :
- 检测与百度网站的连通性:
[root@wayne:~]# ping www.baidu.com
- 间断 ping4 次 192.168.1.100:
[root@wayne:~]# ping -c 4 192.168.1.100
- 间断 ping4 次 192.168.1.100,工夫距离为 3 秒:
[root@wayne:~]# ping -c 4 -i 3 192.168.1.100
19.ifconfig
用来配置和显示 Linux 内核中网络接口的网络参数
语法格局 : ifconfig [参数]]
罕用参数 :
参数 | 阐明 |
---|---|
add < 地址 > | 设置网络设备 IPv6 的 IP 地址 |
del < 地址 > | 删除网络设备 IPv6 的 IP 地址 |
down | 敞开指定的网络设备 |
up | 启动指定的网络设备 |
IP 地址 | 指定网络设备的 IP 地址 |
参考实例 :
- 显示网络设备信息
[root@wayne:~]# ifconfig
eth0 Link encap:Ethernet HWaddr 00:0c:29:c9:94:8e
inet addr:192.168.142.174 Bcast:192.168.142.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fec9:948e/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:15571 errors:0 dropped:0 overruns:0 frame:0
TX packets:937 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1039722 (1.0 MB) TX bytes:164525 (164.5 KB)
Interrupt:19 Base address:0x2000
eth1 Link encap:Ethernet HWaddr 00:0c:29:c9:94:a2
inet addr:192.168.4.200 Bcast:192.168.4.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fec9:94a2/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:133 errors:0 dropped:0 overruns:0 frame:0
TX packets:710 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:20861 (20.8 KB) TX bytes:157963 (157.9 KB)
Interrupt:18 Base address:0x2080
- 启动敞开指定网卡
[root@wayne:~]# ifconfig eth0 up // 启动网卡
[root@wayne:~]# ifconfig eth0 down // 敞开网卡
- 配置和删除网卡的 IPv6 地址
[root@wayne:~]# ifconfig eth0 add 33ffe:3239:800:1002::2/ 64 // 为网卡设置 IPv6 地址
[root@wayne:~]# ifconfig eth0 del 33ffe:3239:800:1002::2/ 64 // 为网卡删除 IPv6 地址
- 批改 MAC 地址
[root@wayne:~]# ifconfig eth0 hw ether 00:AA:BB:CC:DD:EE // 批改 MAC 地址
配置 IP 地址
[root@wayne:~]# ifconfig eth1 192.168.4.200
// 给 eth1 网卡配置 IP 地址
[root@wayne:~]# ifconfig eth1 192.168.4.200 netmask 255.255.255.0
// 给 eth1 网卡配置 IP 地址, 并加上子掩码
[root@wayne:~]# ifconfig eth1 192.168.4.200 netmask 255.255.255.0 broadcast 192.168.4.255
// 给 eth1 网卡配置 IP 地址, 加上子掩码, 加上播送地址
- 启用和敞开 ARP 协定
[root@wayne:~]# ifconfig eth0 arp // 开启
[root@wayne:~]# ifconfig eth0 -arp // 敞开
- 设置最大传输单元
[root@wayne:~]# ifconfig eth0 mtu 2500
// 设置能通过的最大数据包大小为 2500 bytes
20.date 命令
用来显示或设定零碎的日期与工夫
语法格局 : date [选项] [+ 输入模式]
罕用参数 :
参数 | 阐明 |
---|---|
-s [datestr] | 将零碎工夫设为 datestr 中所设定的工夫 |
-u | 显示目前的格林威治工夫 |
参考实例 :
- 显示以后工夫:
[root@wayne:~]# date
Wed Mar 8 12:29:33 CST 2023
- 按格局输入工夫:
[root@wayne:~]# date +"%Y-%m-%d"
2023-03-08
- 设定工夫:
[root@wayne:~]# date -s 20230308 // 设置日期为 20230308,这样会把具体工夫设置成 00:00:00
[root@wayne:~]# date -s 12:34:56 // 设置具体工夫,不会对日期做更改
[root@wayne:~]# date -s "20230308 12:34:56" // 设置全副工夫
以上,如果感觉对你有帮忙,点个赞再走吧,这样 @知微之见也有更新上来的能源!
也欢送私信我,一起交换!