对于学习Linux系统来说,命令是必须熟练掌握的第一个部分。Linux系统中的命令有600多个,但常用的基础命令并不多。虽然不同版本的Linux系统的命令稍有不同,但命令的语法与使用方法基本相同,因此读者只要掌握了CentOS 7中常用的基础命令,就能熟悉其他Linux系统版本的命令了。本章通过分类方式来介绍常用基础命令的语法与使用方法。
man命令用来查看指定命令的帮助信息,其语法格式如下。
man [命令名称]
以下命令用来查看cd命令的帮助信息。
[root@test ~]# man cd
ls 命令用来显示指定目录下的内容,列出指定目录下所含的文件及子目录。此命令与Windows系统中的dir命令功能相似。ls命令的语法格式如下。
ls [选项] [目录或文件]
ls命令的常用选项及其说明见表3-1。
表3-1 ls命令的常用选项及其说明
3.实例
(1)以下命令列出/root目录下的文件及子目录的详细信息。
[root@test ~]# ls -l /root/
total 4
-rw-------. 1 root root 1330 Mar 26 09:50 anaconda-ks.cfg
drwxr-xr-x 2 root root 6 Apr 24 01:59 test
drwxr-xr-x 2 root root 6 Apr 24 01:59 tools
(2)以下命令以时间顺序倒序显示/root目录下的文件及子目录,并显示其详细信息。
[root@test ~]# ls -lrt /root/
total 4
-rw-------. 1 root root 1330 Mar 26 09:50 anaconda-ks.cfg
drwxr-xr-x 2 root root 6 Apr 24 01:59 test
drwxr-xr-x 2 root root 6 Apr 24 01:59 tools
cd命令用于切换目录,其语法格式如下。
cd [选项]
cd命令的常用选项及其说明见表3-2。
表3-2 cd命令的常用选项及其说明
3.实例
(1)以下命令用于切换到/usr/local目录下。
[root@test ~]# cd /usr/local/
[root@test local]# pwd
/usr/local
(2)以下命令用于切换到当前登录用户的家目录下。
[root@test local]# whoami
root
[root@test local]# cd ~
[root@test ~]# pwd
/root
useradd命令用于创建新的系统用户,其语法格式如下。
useradd [选项] 用户名
useradd命令的常用选项及其说明见表3-3。
表3-3 useradd命令的常用选项及其说明
3.实例
(1)创建一个名为mingongge的新用户,创建命令如下。
[root@test ~]# useradd mingongge
[root@test ~]# tail -1 /etc/passwd
mingongge:x:1001:1001::/home/mingongge:/bin/bash
从上述命令输出结果可以看出,创建新用户时,默认用户家目录为/home/用户名。
(2)创建一个名为mgg的新用户,并指定其家目录为/root/mgg,用户ID为9999,创建命令如下。
[root@test ~]# useradd mgg -d /root/mgg -u 9999
[root@test ~]# tail -1 /etc/passwd #检查是否添加成功
mgg:x:9999:9999::/root/mgg:/bin/bash
passwd命令用于设置/修改用户密码,其语法格式如下。
passwd [用户名]
(1)管理员用户修改普通用户的密码,命令如下。
[root@test ~]# whoami
root
[root@test ~]# passwd mgg
Changing password for user mgg.
New password:
BAD PASSWORD: The password is shorter than 8 characters
Retype new password:
passwd: all authentication tokens updated successfully.
根据提示输入两次密码即可。
(2)普通用户修改自己的密码,命令如下。
[mingongge@test ~]$ passwd
Changing password for user mingongge.
Changing password for mingongge.
(current) UNIX password:
New password:
Retype new password:
passwd: all authentication tokens updated successfully.
根据提示输入原来的旧密码,然后连续两次输入新密码即可。
free命令用于查看系统内存状态,包括系统物理内存、虚拟内存、系统缓存。free命令的语法格式如下。
free [选项]
free命令的常用选项及其说明见表3-4。
表3-4 free命令的常用选项及其说明
3.实例
(1)以MB为单位显示当前系统内存的使用情况,命令如下。
[root@test ~]# free -m
total used free shared buff/cache available
Mem: 976M 67M 792M 6M 115M 766M
Swap: 2G 0 2G
(2)以总和的形式显示当前系统内存的使用情况,命令如下。
[root@test ~]# free -t
total used free shared buff/cache available
Mem: 999696 69272 812344 6716 118080 785840
Swap: 2097148 0 2097148
Total: 3096844 69272 2909492
默认单位为KB。
whoami命令用于显示当前登录到系统的用户名,其语法格式如下。
whoami [选项]
whoami命令的常用选项及其说明见表3-5。
表3-5 whoami命令的常用选项及其说明
3.实例
查看当前登录到系统的用户名,命令如下。
[root@test ~]# whoami
root
从上述命令输出结果可以看出,当前登录到系统的用户为root用户。
ps命令用于显示当前进程的状态,其语法格式如下。
ps [选项]
ps命令的常用选项及其说明见表3-6。
表3-6 ps命令的常用选项及其说明
ps命令的选项特别多,读者可以自行使用“man ps”命令查看其帮助信息。
查看系统所有的进程信息,命令如下。
[root@test ~]# ps -ef
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 09:20 # 00:00:01 /usr/lib/systemd/systemd --switched-root --system --deserialize
root 2 0 0 09:20 # 00:00:00 [kthreadd]
root 3 2 0 09:20 # 00:00:00 [ksoftirqd/0]
……(中间部分结果省略)
root 4701 2 0 12:06 # 00:00:38 [kworker/0:1]
postfix 4786 926 0 14:20 # 00:00:00 pickup -l -t unix -u
root 4791 2 0 14:21 # 00:00:00 [kworker/0:0]
root 4817 2 0 14:26 # 00:00:00 [kworker/0:2]
root 4820 1178 0 14:28 pts/0 00:00:00 ps -ef
上述进程信息各部分的含义如下。
date命令用于显示或修改系统时间与日期,其语法格式如下。
date [选项] 显示时间格式(以“+”开头,后面接时间格式参数)
date命令的常用选项及其说明见表3-7。
表3-7 date命令的常用选项及其说明
date命令显示时间格式及其说明见表3-8。
表3-8 date命令显示时间格式及其说明
3.实例
(1)显示系统当前时间,命令如下。
[root@test ~]# date
Sat May 5 15:35:23 CST 2018
(2)用指定的格式显示时间和日期,命令如下。
[root@test ~]# date '+Today is:%D, now is:%T'
Today is:05/05/18, now is:15:40:03
(3)修改系统当前时间,命令如下。
[root@test ~]# date
Sat May 5 16:11:39 CST 2018
[root@test ~]# date -s 20000505
Fri May 5 00:00:00 CST 2000
(4)显示当前时间5天前和5天后的时间,命令如下。
[root@test ~]# date
Fri May 5 00:01:18 CST 2000
[root@test ~]# date -d '5 day ago' #显示5天前的时间
Sun Apr 30 00:01:38 CST 2000
[root@test ~]# date -d '+5 days' #显示5天后的时间
Wed May 10 00:05:29 CST 2000
pwd命令用于显示或打印当前工作目录。执行pwd命令后可知当前所在工作目录的绝对路径。pwd命令的语法格式如下。
pwd [选项]
pwd命令的常见选项是“–help”,用于显示帮助信息。
显示当前所在的工作目录,命令如下。
[root@test ~]# pwd
/root
通过上述命令输出结果可知,当前工作目录是root用户家目录。
shutdown命令用于对系统执行关机操作,其语法格式如下。
shutdown [选项]
shutdown命令的常用选项及其说明见表3-9。
3.实例
将系统立即关机,命令如下。
[root@test ~]# shutdown -h now
Connection closing...Socket close.
Connection closed by foreign host.
Disconnected from remote host at 22:29:25.
Type 'help' to learn how to use Xshell prompt.
从上述结果来看,执行完命令后,连接马上就断开了。
touch命令用于修改文件的时间属性,若文件不存在,系统会自动创建此文件(因此也可以使用touch命令来创建新空白文件),且此文件创建时间为当前系统时间。touch命令的语法格式如下。
touch [选项] 文件名
touch命令的常用选项及其说明见表3-10。
表3-10 touch命令的常用选项及其说明
3.实例
(1)创建一个新的空白文件并查看其创建时间,命令如下。
[root@test ~]# date
Fri May 5 00:43:37 CST 2000
[root@test ~]# touch newfile
[root@test ~]# ls -l
total 0
-rw-r--r-- 1 root root 0 May 5 00:43 newfile
(2)修改文件的访问时间为系统当前时间,命令如下。
[root@test ~]# ls -lu
total 0
-rw-r--r-- 1 root root 0 May 5 17:14 file.txt
[root@test ~]# date
Sat May 5 17:17:28 CST 2018
[root@test ~]# touch -a file.txt
[root@test ~]# ls -lu
total 0
-rw-r--r-- 1 root root 0 May 5 17:17 file.txt
(3)修改文件的修改时间为系统当前时间,命令如下。
[root@test ~]# ls -l
total 0
-rw-r--r-- 1 root root 0 May 5 17:14 file.txt
[root@test ~]# date
Sat May 5 17:21:23 CST 2018
[root@test ~]# touch -m file.txt
[root@test ~]# ls -l
total 0
-rw-r--r-- 1 root root 0 May 5 17:21 file.txt
(4)修改文件的访问时间为参考文件的时间,命令如下。
[root@test ~]# ls -lu /usr/local/access
-rw-r--r-- 1 root root 0 May 5 17:23 /usr/local/access
[root@test ~]# ls -lu file.txt
-rw-r--r-- 1 root root 0 May 5 17:17 file.txt
[root@test ~]# touch -a -r /usr/local/access file.txt
[root@test ~]# ls -lu file.txt
-rw-r--r-- 1 root root 0 May 5 17:23 file.txt
cat命令用于查看文件内容,还可以合并文件,如果合并后的文件不存在,则自动创建。cat命令的语法格式如下。
cat [选项] 文件名
cat 文件a 文件b >文件c
cat命令的常用选项及其说明见表3-11。
3.实例
(1)查看文件test.txt的内容并对所有输出行数编号,命令如下。
[root@test ~]# cat -n test.txt
1 #version=DEVEL
2 # System authorization information
3
4
5 auth --enableshadow --passalgo=sha512
6
7 # Use CDROM installation media
(2)将test.txt文件内容加上行号后输入文件test1.txt中,命令如下。
[root@test ~]# cat -n test.txt > test1.txt
[root@test ~]# cat -n test1.txt
1 1 #version=DEVEL
2 2 # System authorization information
3 3
4 4
5 5 auth --enableshadow --passalgo=sha512
6 6
7 7 # Use CDROM installation media
(3)将test.txt文件和test1.txt文件合并到file文件中,命令如下。
[root@test ~]# cat test.txt test1.txt >file
[root@test ~]# cat file
#version=DEVEL
# System authorization information
auth --enableshadow --passalgo=sha512
# Use CDROM installation media
1 #version=DEVEL
2 # System authorization information
3
4
5 auth --enableshadow --passalgo=sha512
6
7 # Use CDROM installation media
mkdir命令用于创建一个新目录,其语法格式如下。
mkdir [选项] 目录名
mkdir命令的常用选项及其说明见表3-12。
3.实例
(1)在/test目录下创建新目录file,同时设置文件属主有读、写和执行权限,属组有读、写权限,其他人只有读权限,命令如下。
[root@test ~]# mkdir -m 764 /test/file
[root@test ~]# ls -ld /test/file
drwxrw-r-- 2 root root 6 May 5 10:02 /test/file
(2)在/test目录下创建testfile目录,并在testfile目录下创建filetest目录,命令如下。
[root@test ~]# mkdir -p /test/testfile/filetest
[root@test ~]# tree /test/
/test/
├── file
└── testfile
└── filetest
3 directories, 0 files
rm命令用于删除文件或目录。使用rm命令时要注意,一旦文件或目录被删除,就无法再恢复。rm命令的语法格式如下。
rm [选项] [文件或目录]
rm命令的常用选项及其说明见表3-13。
3.实例
(1)删除文件test.txt和文件test1.txt,并在删除前进行确认,命令如下。
[root@test ~]# rm -i test.txt test1.txt
rm: remove regular file 'test.txt'# y
rm: remove regular file 'test1.txt'# y
输入y确认删除。
(2)删除/test目录下的所有目录,在删除前不进行确认,命令如下。
[root@test ~]# rm -rf /test/
[root@test ~]# ls /test
ls: cannot access /test: No such file or directory
cp命令用于复制,它可以将单个文件复制成一个指定文件名的文件或将其复制到一个存在的目录下,还可以同时复制多个文件或目录。cp命令的语法格式如下。
cp [选项] [文件名或目录名]
cp [选项] 源文件或目录 目标文件或目录
cp命令的常用选项及其说明见表3-14。
表3-14 cp命令的常用选项及其说明
篇幅有点长,就截选这么多了。