一、管道符(|)
说明:经常和grep配合使用
语法: 数据源 | grep "筛选的条件"
eg:
[root@192 ~]# cat anaconda-ks.cfg | grep "ty$"
pwpolicy root --minlen=6 --minquality=1 --notstrict --nochanges --notempty
pwpolicy luks --minlen=6 --minquality=1 --notstrict --nochanges --notempty
二、查看指令位置(which)
eg:
[root@192 ~]# which ls man cp
alias cp='cp -i'
/usr/bin/cp
alias ls='ls --color=auto'
/usr/bin/ls
/usr/bin/man
三、系统指令
1、关机
shutdown -h
说明:现在关闭:shutdown -h now n分钟后关闭:shutdown -h +n 具体时间关闭:shutdown -h 12:30
- init 0
2、重启
- reboot
- init 6
3、运行程序信息(进程的查看)
- ps -axu (静态展现)
[root@192 ~]# ps -aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.3 125500 3888 ? Ss 08:22 0:02 /usr/lib/systemd/systemd --switched-root --system --deserialize 22
root 2 0.0 0.0 0 0 ? S 08:22 0:00 [kthreadd]
root 4 0.0 0.0 0 0 ? S< 08:22 0:00 [kworker/0:0H]
root 5 0.0 0.0 0 0 ? S 08:22 0:00 [kworker/u256:0]
root 6 0.0 0.0 0 0 ? R 08:22 0:11 [ksoftirqd/0]
...
top (动态展现)
4、强制关闭程序
- kill -9 程序编号(pid)
eg: kill -9 3306 关闭程序mysql
5、查看端口
netstat -apunt
说明:查看所有运行程序的端口 可以确认程序是否在运行
[root@192 ~]# netstat -apunt
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 906/sshd
tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 910/php-fpm: master
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 939/nginx: master p
tcp 0 0 192.168.187.129:22 192.168.187.1:56412 ESTABLISHED 1192/sshd: root@not
tcp 0 36 192.168.187.129:22 192.168.187.1:50431 ESTABLISHED 46828/sshd: root@pt
tcp6 0 0 :::22 :::* LISTEN 906/sshd
tcp6 0 0 :::3306 :::* LISTEN 950/mysqld
udp 0 0 0.0.0.0:68 0.0.0.0:* 703/dhclient
udp 0 0 127.0.0.1:323 0.0.0.0:* 657/chronyd
udp6 0 0 ::1:323 :::* 657/chronyd
lsof -i:端口号
说明:前提知道程序的端口 确认该程序是否运行
eg: 查看ssh,端口号为22的程序是否在运行
[root@192 ~]# lsof -i:22
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
sshd 906 root 3u IPv4 20352 0t0 TCP *:ssh (LISTEN)
sshd 906 root 4u IPv6 20361 0t0 TCP *:ssh (LISTEN)
sshd 1192 root 3u IPv4 21052 0t0 TCP 192.168.187.129:ssh->192.168.187.1:56412 (ESTABLISHED)
sshd 46828 root 3u IPv4 3100840 0t0 TCP 192.168.187.129:ssh->192.168.187.1:50431 (ESTABLISHED)
有内容,就代表在运行,无内容,就没有在运行
6、查看日志
head 文件
拓展:默认查看前10行日志 要想查询多行,用 head -行数 文件
eg:查询var 下messages文件的前4行
[root@192 ~]# head -4 /var/log/messages
Mar 13 09:19:01 localhost rsyslogd: [origin software="rsyslogd" swVersion="8.24.0-55.el7" x-pid="910" x-info="http://www.rsyslog.com"] rsyslogd was HUPed
Mar 13 09:23:07 localhost dhclient[698]: DHCPREQUEST on ens33 to 192.168.187.254 port 67 (xid=0x15008e1)
Mar 13 09:23:07 localhost dhclient[698]: DHCPACK from 192.168.187.254 (xid=0x15008e1)
Mar 13 09:23:07 localhost NetworkManager[656]: <info> [1647134587.0144] dhcp4 (ens33): address 192.168.187.129
- tail -f 文件 (持续监控文件变化)
eg: 模拟监控 1.txt 的变化
监控前的变化
改变1.txt 文件的内容
监控后的变化
四、用户操作
权限
可读(r) 可写(w) 可执行(x) 没有(-)
数字表示法: r:4 w:2 x:1 -:0
文件和目录权限构成
修改用户权限(chmod)
数字表示法:
chmod 数字 文件/目录
eg: chmod 561 1.txt
解析:5=4+1(4:r 1:x)
6=4+2(4:r 2:w)
1=1(1:x)
表示的是 该文件拥有者有可读可执行的权限,分组权限为可读可写,其他用户权限是可执行
对用户的操作
- 创建用户:useradd 用户名
- 密码:passwd 用户密码
- 切换用户:su 用户名
- 删除用户:userdel 用户名
- 退出用户:exit
五、 其他命令
1、 查找文件/目录(find)
语法:find 要查找的路径(绝对路径) -name 文件名
eg:查找home目录下包含it的文件
[root@192 ~]# find /home/ -name it*
/home/itheima
2、 软链接(快捷方式)
作用:快捷方式是让我们能够快速进入指定的目录下
与复制区别:复制是将原来的文件复制指定位置,原来有多大,
在新的位置中也会开辟同样打下的空间进行存储
语法:ln -s 源目录文件位置 软链接的位置
eg: root下有个data目录,在home目录下创建软链接
3、 打包和压缩
3.1-1 打包(tar cvf)
tar cvf 打包的文件名 要打包的文件或目录
cvf解析:
c 要进行的操作是打包(必须) v 显示打包过程(可选) f 指定打包名称(必须)
打包名称后缀为tar 是一个压缩包
eg: tar cvf data.tar data
注意:要是跨目录打包的话要用绝对路径
tar cf 绝对路径指定 打包的文件
[root@192 ~]# ls
anaconda-ks.cfg data
[root@192 ~]# tar cvf text.tar data 打包文件data命名为text.tar
data/
[root@192 ~]# ls
anaconda-ks.cfg data text.tar
[root@192 ~]#
3.1-2 解包(tar xvf)
语法:tar xvf 压缩包
3.2-1 压缩(zcvf)
语法: tar zcvf 压缩文件/目录名字.tar.gz 原始文件
z: 采用zip方式压缩
[root@192 ~]# tar zcvf data.tar.gz data/
data/
[root@192 ~]# ls
anaconda-ks.cfg data data.tar.gz
3.2-2 解压缩(zxvf)
语法: tar zxvf 压缩文件
[root@192 ~]# tar zxvf data.tar.gz
data/
[root@192 ~]# ls
anaconda-ks.cfg data data.tar.gz
[root@192 ~]#
六、vi操作(文本编辑工具)
6.1 文件的打开和保存退出
语法:vi 文件名
说明:文件存在则直接打开,文件不存在则创建一个新文件
保存退出::wq!(其他的方式还很多,不一一列举)
6.2 vi三种模式
命令模式
使用命令操作文件 默认情况 打开文件就是进入命令模式
插入模式
也叫编辑模式 可以进行文本信息的编写 进入插入模式后退出到命令模式 按Esc键
末行模式
最底层写的指令
6.3 vi命令
编辑模式
- i 在光标前面写入数据(记住)
- 大写I 移动这一行的开头,然后可以写入数据
- 小写a光标的下一个字符前写入
- 大写A 移动到这一行的尾部进行写入
- 小写字母o进入下一行写入
- 大写字母O是进入上一行写入
其他指令
复制文本信息
- 小写yy复制当前行
- n(行数)yy 从当前行开复制指定行数
粘贴文本信息
- 小写p在一行粘贴
删除文本
- 小写dd 删除当前行
- n(行数)dd 从当前行开删除指定行数
撤回
- 小写 u
反撤回
- ctrl+r
文本左移右移
- shift + >>
- shift + <<
选中
- 小写v
- 移动方向键选择要操作的文本
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。