一、文件操作指令
1、ls
,用于列出指定路径下的文件和目录。
$ ls -l /root
total 4
-rw-r--r-- 1 root root 0 Jun 27 10:00 test.txt
drwxr-xr-x 2 root root 4096 Jun 30 09:41 logs
2、cd
,用于改变当前工作目录。
$ cd /var/log
$ pwd
/var/log
3、mkdir
,用于创建新目录。
$ mkdir /opt/testdir
4、cp
,用于复制文件或目录。
$ cp /root/test.txt /opt/testdir/
5、mv
,用于移动或重命名文件或目录。
$ mv /opt/testdir/test.txt /root/newname.txt
$ mv /opt/testdir /var/log/
二、文件内容查看和编辑指令
1、cat
,用于查看文件内容。
$ cat /var/log/syslog
2、less
,用于分页查看文件内容。
$ less /var/log/syslog
3、tail
,用于查看文件的末尾内容。
$ tail -f /var/log/syslog
4、grep
,用于在文件中查找匹配字符串。
$ grep "error" /var/log/syslog
5、sed
,用于对文本文件进行流编辑操作。
$ sed 's/old/new/g' file.txt
三、打包和解压缩指令
1、tar
,用于打包文件或目录。
$ tar -cvf test.tar /opt/testdir
2、gzip
,用于压缩文件。
$ gzip test.tar
3、tar
和gzip
同时使用,用于打包并压缩文件或目录。
$ tar -czvf test.tar.gz /opt/testdir
4、tar
和bzip2
同时使用,用于打包并压缩文件或目录。
$ tar -cjvf test.tar.bz2 /opt/testdir
5、tar
,用于解压缩文件或目录。
$ tar -xvf test.tar
四、系统运维指令
1、top
,用于实时查看系统资源占用情况。
$ top
2、ps
,用于查看当前系统进程状态。
$ ps -ef
3、kill
,用于终止指定PID的进程。
$ kill 1234
4、netstat
,用于查看网络状态。
$ netstat -an
5、ifconfig
,用于查看网络接口的一些信息。
$ ifconfig
五、其他常用指令
1、wget
,用于从网络下载文件。
$ wget http://example.com/file.zip
2、curl
,用于从网络获取或发送数据。
$ curl http://example.com/api
3、ping
,用于测试网络连接。
$ ping 8.8.8.8
4、ssh
,用于远程登录服务器。
$ ssh username@192.168.1.100
5、scp
,用于在本地和远程服务器之间复制文件。
$ scp /local/file.txt username@192.168.1.100:/remote/
本文介绍了 Linux 运维工程师必备的常用 Shell 指令,这些指令可以帮助工程师在日常工作中高效地进行文件操作、文件内容查看和编辑、打包和解压缩、系统运维等任务。每个小节介绍了其中的 5 个常用指令,并提供了对应的代码示例。熟练掌握这些指令,对于 Linux 运维工程师的工作能力和效率都有很大的提升。