📅  最后修改于: 2023-12-03 15:32:41.518000             🧑  作者: Mango
在Linux系统中,Shell是一个非常重要的部分。Shell有很多种,比如Bash、ksh、tcsh等,其中Bash是最常用的一种。Bash支持很多命令,我们今天就来介绍一些常用的Shell-Bash命令。
ls
命令是列出文件和目录的命令,常用的选项有:
-l
显示文件的详细信息;-a
显示所有文件,包括隐藏文件;-h
人类可读的文件大小格式。$ ls -l
-rw-r--r-- 1 user 501 0B 3 Jan 11:28 file1.txt
-rw-r--r-- 1 user 501 303B 3 Jan 11:28 file2.txt
-rw-r--r-- 1 user 501 1.1K 3 Jan 11:28 file3.txt
$ ls -a
. .. .hidden_file directory
$ ls -lh
-rw-r--r-- 1 user 501 0B Jan 3 11:28 file1.txt
-rw-r--r-- 1 user 501 303B Jan 3 11:28 file2.txt
-rw-r--r-- 1 user 501 1.1K Jan 3 11:28 file3.txt
cp
命令是拷贝文件的命令,常用的选项有:
-r
递归复制目录及子目录;-i
在覆盖文件前询问是否进行覆盖;-p
保留文件的所有属性,如权限、时间等。$ cp file1.txt file4.txt
$ cp -r directory directory_copy
$ cp -i file1.txt file4.txt
$ cp -p file1.txt file4.txt
rm
命令是删除文件或目录的命令,常用的选项有:
-r
递归删除目录及子目录;-f
强制删除,不询问确认。$ rm file1.txt
$ rm -r directory
$ rm -f file1.txt
mv
命令是移动文件或目录的命令,也可以用来重命名文件或目录。
$ mv file1.txt directory/
$ mv directory directory_newname
$ mv file1.txt file_newname.txt
top
命令可以实时显示系统的资源情况,包括CPU、内存、进程等。
$ top
free
命令可以显示系统的内存使用情况。
$ free -h
total used free shared buff/cache available
Mem: 7.8G 2.9G 1.1G 8.0M 3.8G 4.5G
Swap: 0B 0B 0B
ps
命令可以显示系统中运行的进程。
$ ps -ef
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 Jan02 ? 00:00:04 /sbin/init splash
root 2 0 0 Jan02 ? 00:00:00 [kthreadd]
root 3 2 0 Jan02 ? 00:00:00 [rcu_gp]
...
ping
命令可以测试与另一个主机之间的连接。
$ ping google.com
PING google.com (172.217.13.174) 56(84) bytes of data.
64 bytes from lga25s68-in-f174.1e100.net (172.217.13.174): icmp_seq=1 ttl=54 time=10.0 ms
64 bytes from lga25s68-in-f174.1e100.net (172.217.13.174): icmp_seq=2 ttl=54 time=8.01 ms
...
ifconfig
命令可以显示网络接口的信息。
$ ifconfig
enp3s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
ether 00:00:00:00:00:00 txqueuelen 1000 (Ethernet)
RX packets 2008 bytes 700699 (700.6 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 1062 bytes 181086 (181.0 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device interrupt 17
netstat
命令可以显示系统的网络连接情况。
$ netstat -ant
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN
tcp6 0 0 :::80 :::* LISTEN
tcp6 0 0 :::22 :::* LISTEN