1、查找/杀死某个进程
查找进程:ps aux | grep ***
杀死进程:kill -9 ***进程号
2、awk命令
举例说明:需要输出空闲内存的容量(具体数字)
使用awk命令可以很好实现:
[root@test]# cat /proc/meminfo | awk '/^MemFree:/{print$2}'
3190660
说明:^表示以MemFree:开头的,/……/内填写匹配的字符信息,{print$2}表示输出第二项。整个表达式用‘’;
3、vimdiff
该命令可以用来比较iptables前后的变化;
4、echo
echo [字符串] >> [文件名]
表示将字符串输出并重定向到对应文件里,>>表示重定向,若文件名不存在则会新建文件并把结果写进去,若已经存在则把echo输出写到文件后面;
5、touch
新建或者修改文件时间,若文件存在新建会报错;
6、stat
查看文件详细信息;
6、ln
In [选项] 源文件 目标文件
-s:建立软链接,不加-s则默认建立硬链接;
-f:如果目标文件已经存在,则删除目标文件后再建立链接文件;
硬链接缺点:很难确认硬链接文件位置、不能链接目录、不能跨分区用,正常不建议用硬链接;
软链接:可以跨分区、可以链接目录等的,建议事用
7、chown
chown是修改文件和目录的所有者和所属组的命令
chown [选项] 所有者:所属组 文件或目录
选项:-R——递归设置文件权限
普通用户不能修改文件的所有者,即使自己是文件的所有者。但可以修改所有者是自己文件的权限。
插播:umask命令
umask权限系统默认值为:
[root@jone ~]# umask
0022
[root@jone ~]# umask -S
u=rwx,g=rx,o=rx
[root@jone ~]#
新建文件的默认最大权限是666,目录是777,按照和umask的差值去计算新建文件/目录的默认权限:
8、chgrp
修改文件或目录的所属组的命令
9、man
man [选项] 命令
选项:
-f:查看拥有哪个级别的帮助
-k:查看和命令相关的所有帮助
10、info
info帮助命令是一套完整的资料,每个单独命令只是这套完整资料中的某一个小章节。
11、grep
grep中是文件中查找内容(包含匹配,正则),find是查找文件名(完全匹配,通配符);
grep [选项] "搜索内容" 文件名
选项:
-i:忽略大小写
-n:输出行号
-v:反向查找
--color=auto:搜索出关键字用颜色表示
正则与通配符的区别:
通配符:用于匹配文件名,完全匹配。操作文件或者或者文件名时候都使用通配符
正则表达式,匹配字符串,包含匹配
12、管道符:补充命令
命令格式:命令1 | 命令2。命令1的正确输出作为命令2的操作对象,加管道符后命令1输出的就是文本流,可以看作字符串。
13、wc
统计多少行,多少个单词,多少个字符。
wc -l:统计行。
14、sync
数据同步,功能是刷新文件系统缓冲区(当磁盘运行不过来时,数据会存到内存的buffer区,该命令就是刷新内存的缓冲区);
15、netstat
是网络状态查看命令,既可以查看到本机开启的端口,也可以查看到有哪些客户端连接。
使用最频繁的:
- 查看本机开启的端口:netstat -tuln
- 查看本机哪些程序开启的端口:netstat -tulnp
- 查看所有连接:netstat -an
- 显示路由表:netstat -rn,与route命令作用一样
16、write命令
write [用户] [终端]
后面就可以发送相关信息,按ctrl D发送
17、wall
给所有登录用户发送信息
18、w
可以查看本地上有哪些用户登录。
登录终端:本地字符终端 tty1-6 alt+F1-6
本地图形终端 tty7 ctrl+alt+F7(按住3秒,需要安装启动图形界面)
远程终端 pts/0-255
19、mail
可以使用这个命令给其他用户发邮件。接收到的邮件都保存到/var/spool/mail。
mail [用户名]
发送某个文件的内容给指定用户,执行如下命令:
mail -s "[邮件主题]" [用户] < [文件路径]
-s:指定邮件标题
接收端通过mail查看接收到的邮件,相关交互命令如下:
20、系统痕迹命令
系统中有一些重要的痕迹日志文件,/var/log/wtmp、/var/rn/utmp、var/log/btmp、/var/log/lastlog等日志文件。这些文件保存系统的重要登录痕迹,不能直接用cat或者vim直接查看,都是二进制文件。
w命令:显示系统中正在登录的用户信息的命令
[root@bogon log]# w
12:16:55 up 23 min, 3 users, load average: 0.00, 0.01, 0.05
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root tty1 11:53 23:11 0.03s 0.03s -bash
zhangli pts/0 192.168.0.113 11:54 22:41 0.02s 0.02s -bash
root pts/1 192.168.0.113 11:54 7.00s 0.15s 0.03s w
who命令:和w命令类似,也是查看用户登录信息,简化版;
last命令:查看系统所有登录过的用户信息;
[root@bogon log]# last
root pts/1 192.168.0.113 Sat Dec 5 11:54 still logged in
zhangli pts/0 192.168.0.113 Sat Dec 5 11:54 still logged in
root tty1 Sat Dec 5 11:53 still logged in
reboot system boot 3.10.0-957.el7.x Sat Dec 5 11:53 - 12:21 (00:28)
zhangli pts/1 192.168.0.113 Thu Dec 3 23:54 - 00:15 (00:21)
root pts/1 192.168.0.113 Thu Dec 3 23:54 - 23:54 (00:00)
root pts/1 192.168.0.113 Thu Dec 3 23:53 - 23:53 (00:00)
root pts/0 192.168.0.113 Thu Dec 3 21:29 - 00:15 (02:46)
root tty1 Thu Dec 3 21:28 - 00:16 (02:47)
reboot system boot 3.10.0-957.el7.x Thu Dec 3 21:26 - 00:16 (02:50)
root pts/0 192.168.0.113 Wed Dec 2 21:57 - crash (23:28)
root tty1 Wed Dec 2 21:57 - 00:07 (02:10)
reboot system boot 3.10.0-957.el7.x Wed Dec 2 21:54 - 00:16 (1+02:22)
root pts/0 192.168.0.113 Tue Dec 1 22:32 - 23:29 (00:56)
reboot system boot 3.10.0-957.el7.x Tue Dec 1 22:31 - 23:29 (00:58)
root pts/0 192.168.0.113 Mon Nov 30 21:55 - 00:13 (02:17)
root tty1 Mon Nov 30 21:55 - 00:13 (02:17)
reboot system boot 3.10.0-957.el7.x Mon Nov 30 21:54 - 00:13 (02:18)
root pts/0 192.168.0.108 Mon Sep 7 21:57 - crash (83+23:57)
root tty1 Mon Sep 7 21:53 - 23:12 (01:18)
reboot system boot 3.10.0-957.el7.x Mon Sep 7 21:52 - 00:13 (84+02:21)
root tty1 Thu Sep 3 21:18 - 21:28 (00:10)
reboot system boot 3.10.0-957.el7.x Thu Sep 3 21:17 - 21:28 (00:11)
root pts/0 192.168.0.108 Wed Aug 26 23:10 - crash (7+22:06)
root tty1 Wed Aug 26 23:04 - 00:18 (01:14)
reboot system boot 3.10.0-957.el7.x Wed Aug 26 23:03 - 21:28 (7+22:24)
wtmp begins Wed Aug 26 23:03:58 2020
lastlog命令:查看系统中所有用户最后一次登录的时间;
[root@bogon log]# lastlog
用户名 端口 来自 最后登陆时间
root pts/1 192.168.0.113 六 12月 5 11:54:57 +0800 2020
bin **从未登录过**
daemon **从未登录过**
adm **从未登录过**
lp **从未登录过**
sync **从未登录过**
shutdown **从未登录过**
halt **从未登录过**
mail **从未登录过**
operator **从未登录过**
games **从未登录过**
ftp **从未登录过**
nobody **从未登录过**
systemd-network **从未登录过**
dbus **从未登录过**
polkitd **从未登录过**
sshd **从未登录过**
postfix **从未登录过**
chrony **从未登录过**
zhangli pts/0 192.168.0.113 六 12月 5 11:54:14 +0800 2020
lastb:查看错误登录信息;
[root@bogon log]# lastb
root tty1 Mon Nov 30 21:55 - 21:55 (00:00)
root tty1 Thu Sep 3 21:18 - 21:18 (00:00)
21、挂载命令
mount [-t 文件系统] [-L 卷标名] [-o 特殊选项] 设备文件名 挂载点
选项:
-t 文件系统:加入文件系统类型来指定挂载的类型,可以ext3、ext4、iso9660(默认)等文件系统;
-L 卷标名:挂载指定卷标的分区,而不是安装设备文件名挂载;
-o 特殊选项:可以指定挂载的额外选项,比如读写权限、同步异步等,如果不指定,则默认值生效;
一般-o特殊选项不建议修改,按默认设置即可。
光盘挂载:
- 首先需要在/mnt/目录下新建一个cdrom目录,大部分都是这样操作,其他空目录也行;
- 然后需要挂载上CD光盘文件;
- CD光盘文件挂载完成后,将/mnt/cdrom 空目录与设备文件名/dev/sr0进行挂载,命令是mount -t iso9660(-t+系统可以不写)/dev/sr0 /mnt/cdrom/;
- 挂载完成,可以通过mount查看挂载情况;
5.用完之后记得卸载,命令是umount /dev/sr0
U盘挂载:
U盘会和硬盘共用设备文件名,因此U盘的设备文件名不是固定的,需要手动查询,查询命令为:df -l
挂载过程与光盘类似,也需要新建一个空目录,然后与设备文件名进行挂载,挂载命令为:
mount -t vfat(文件系统格式) -o iocharset=utf8(支持中文编码) /dev/sdb1 /mnt/usb/
卸载命令为:umount /mnt/usb/
挂载NTFS分区:
对于需要挂载NTFS分区,一般情况下需要重新编译内核。LINUX和UNIX对NTFS支持并不好,所以默认不加载。
22、:23,38s /^/#/
表示进入某个配置文件,从23行到38行开头加注释内容