一、文件操作
文件操作是 Linux 中最基本的操作之一。在命令行下,掌握一定的文件操作能力,对于日常工作中的文件管理、备份、迁移等操作是非常必要的。
1、ls
查看文件列表的命令,可以列出当前目录下的所有文件以及文件夹。
$ ls
2、cp
复制文件的命令,可以将一个文件复制到另一个位置。
$ cp file1.txt file2.txt
3、mv
移动文件的命令,可以将一个文件从一个目录移动到另一个目录。
$ mv file1.txt /home/user1/
4、mkdir
创建目录的命令,可以在当前目录下创建一个新目录。
$ mkdir newdir
5、rm
删除文件或目录的命令,可以删除一个文件或目录,但是需要谨慎使用。
$ rm file.txt
二、系统管理
系统管理是 Linux 运维工程师必备的技能之一。在这方面,我们需要掌握常用的系统管理命令,例如查看运行中的进程、查看系统信息、查看网络状态等。
1、ps
查看进程信息的命令,可以列出当前系统中正在运行的所有进程。
$ ps aux
2、top
查看进程信息的命令,可以实时查看当前系统中正在运行的进程信息,包括 CPU 占用率、内存占用率等。
$ top
3、df
查看磁盘空间的命令,可以列出系统中各个分区的磁盘使用情况。
$ df -h
4、free
查看内存占用情况的命令,可以列出系统中各个进程所占用的内存情况。
$ free -m
5、ifconfig
查看网络接口信息的命令,可以列出系统中各个网络接口的 IP 地址、网关等信息。
$ ifconfig
三、网络通信
在网络通信方面,我们需要掌握常用的网络通信命令,例如 ping、telnet、curl。
1、ping
测试网络连通性的命令,可以测试指定主机是否能够连通。
$ ping www.baidu.com
2、telnet
测试网络端口连通性的命令,可以测试指定主机上指定端口是否能够连接。
$ telnet 127.0.0.1 80
3、curl
发送 HTTP 请求的命令,可以查看指定 URL 返回的内容。
$ curl www.baidu.com
四、进程控制
进程控制是 Linux 系统管理的重要内容之一,我们需要掌握常用的进程控制命令,如启动、停止和重启服务。
1、systemctl
控制系统服务的命令,可以启动、停止、重启或者查看系统服务的状态。
$ systemctl start apache2.service
2、kill
终止指定进程的命令,可以终止指定 PID 的进程。
$ kill -9 1234
3、bg
将进程转为后台运行的命令,可以将指定进程挂起,并转为后台运行。
$ bg %2
4、jobs
查看当前所有正在后台运行的任务的命令,可以查看系统中当前所有正在后台运行的任务。
$ jobs
五、文本编辑
在文本编辑方面,我们也需要掌握一定的基本操作,例如创建、编辑和查看文本文件等。
1、vim
编辑器命令,可以编辑文本文件。
$ vim test.txt
2、cat
查看文本文件内容的命令,可以在命令行下查看指定文本文件的内容。
$ cat test.txt
3、echo
输出指定字符串的命令,可以在命令行下输出指定的字符串。
$ echo "Hello, world!"
六、压缩
在 Linux 中,我们也需要掌握常用的压缩解压命令,例如 tar、zip、gzip 等。
1、tar
打包和压缩文件的命令,可以将一个或多个文件或者整个目录打包并压缩成一个文件。
$ tar -zcvf test.tar.gz /usr/local/test
2、gzip
压缩文件的命令,可以将指定的文件压缩成 .gz 格式的文件。
$ gzip test.txt
3、zip
压缩文件的命令,可以将指定的文件压缩成 .zip 格式的文件。
$ zip test.zip test.txt
总结
本文介绍了 Linux Shell 中常用的文件操作、系统管理、网络通信、进程控制、文本编辑和压缩等多个方面的命令。这些命令是 Linux 运维工程师必备的技能之一。通过掌握这些命令,可以更好地管理和维护 Linux 系统。