Linux常用的20个命令(下)
无论你是后端程序员还是前端程序员,都避免不了和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" // 设置全部时间
以上,如果觉得对你有帮助,点个赞再走吧,这样@知微之见也有更新下去的动力!
也欢迎私信我,一起交流!
Linux常用的20个命令(下)的更多相关文章
- Linux常用的20个命令
以下为20个命令 1.ls命令:ls命令式列出目录内容(List Directory Contents)的意思.运行它就是列出文件夹里面的内容,可能是文件也可能是文件夹. root@tecmint:~ ...
- linux -- 常用的20个命令
1. ls命令 ls命令是列出目录内容(List Directory Contents)的意思.运行它就是列出文件夹里的内容,可能是文件也可能是文件夹. root@tecmint:~# ls Andr ...
- Linux之我最常用的20条命令
Linux之我最常用的20条命令 玩过 Linux的人都会知道, Linux中的命令的确是非常多,但是玩过 Linux的人也从来不会因为 Linux的命令如此之多而烦恼,因为我们只需要掌握我们最常用的 ...
- Linux常用的50个命令
50个最常用的Unix/Linux命令 2014-08-20 这篇文章翻译自http://www.thegeekstuff.com/2010/11/50-linux-commands/这些都是一些很常 ...
- Linux - 常用归档、压缩命令
1. ncompress compress命令是一个相当古老的 unix 档案压缩指令,压缩后的文件会加上一个 .Z 的后缀名,默认不会保留源文件.compress只能对文件进行压缩,若要压缩目录,先 ...
- Linux常用的18个命令(复习)
1. cd命令 它用于切换当前目录,它的参数是要切换到的目录的路径,可以是绝对路径,也可以是相对路径.如: cd /root/Docements # 切换到目录/root/Docements cd . ...
- Linux常用基本命令:三剑客命令之-awk内置变量与自定义变量
AWK中,变量分为两种:内置变量与自定义变量. 常见的内置变量有: FS:输入字段分隔符, 默认为空白字符 OFS:输出字段分隔符, 默认为空白字符 RS:输入记录分隔符(输入换行符), 指定输入时的 ...
- 初窥Linux 之 我最常用的20条命令
魏公 SecureCRTuname -avisftppartition,fsshell kshell,bshelluser,groupIPTables文件数,内核参数tail,less/var/log ...
- linux最常用的20条命令
玩过Linux的人都会知道,Linux中的命令的确是非常多,但是玩过Linux的人也从来不会因为Linux的命令如此之多而烦恼,因为我们只需要掌握我们最常用的命令就可以了.当然你也可以在使用时去找一下 ...
- linux最常用的20个命令
玩过Linux的人都会知道,Linux中的命令的确是非常多,但是玩过Linux的人也从来不会因为Linux的命令如此之多而烦恼,因为我们只需要掌握我们最常用的命令就可以了.当然你也可以在使用时去找一下 ...
随机推荐
- 函数传参中,形参类型为何使用const char*,而不是用char*
1.当传递常量字符串给 char* 类型的形参时,C++ 编译器可能会发出警告,因为 char* 可以用于修改字符串内容.而使用 const char* 类型,则指示调用者不应该修改传入的字符串内容, ...
- HTTP 1.1响应码
HTTP 1.1响应码 响应码和信息 含义 HttpURLConnection 1XX 信息 100 Continue 服务器准备接受请求主体,客户端应当发送请求主体:这允许客户端在请求中发送大量数据 ...
- [转帖]Innodb存储引擎-idb文件格式解析
文章目录 ibd 文件格式解析 idb文件 page类型和格式(File Header & Trailer) FIL_PAGE_TYPE_FSP_HDR 格式 Extent Descripto ...
- [转帖]查看请求在nginx中消耗的时间
需求:查看请求在nginx中消耗的时间,不包括程序响应时间. 1.声明日志的格式,在nginx配置文件nginx.conf里的http下添加如下内容: log_format test '$remote ...
- java -D的一些学习和使用
背景 java开发的程序有很多进行配置的方式 可以通过 yaml文件或者是xml文件 也可以通过环境变量的方式. 1. 容器的话可以使用 -e 或者是env进行注入 2. K8S的话可以通过 conf ...
- UOS可能的来源
1050a 行业版 是基于 阿里的Anolis 1050d 企业版 是基于debian 1050e 欧拉版 是基于华为欧拉 euler
- redis 6源码解析之 dict
edis源码的dict.c主要实现了基于hash表的操作,如增删改查,对哈希表大小的扩容和缩容,以及对哈希表的rehash和增量rehash等.在源码的dictScan函数中,非常巧妙精美地实现了对哈 ...
- css中也可以使用变量了?
前言 大家都听说过变量,我们学习的任何语言都有变量的存在. css中是否也存在变量呢? 也许很多小伙伴也是通过less,scss中来使用css变量 其实在css中也是有变量的,今天我们也来学习一下. ...
- 任意文件下载包含https的图片
使用a标签进行下载 <a href="https://zos.alipayobjects.com/rmsportal/jkjgkEfvpUPVyRjUImniVslZfWPnJuuZ. ...
- 【JS 逆向百例】拉勾网爬虫,traceparent、__lg_stoken__、X-S-HEADER 等参数分析
关注微信公众号:K哥爬虫,持续分享爬虫进阶.JS/安卓逆向等技术干货! 声明 本文章中所有内容仅供学习交流,抓包内容.敏感网址.数据接口均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后 ...