阅读目录
一、关机命令
1、halt命令
默认的halt命令可以结束Linux当前所有正在运行的程序,停止所有设备,系统进入等待用户切断电源的状态。在Linux系统中绝对禁止在没有进行关机程序而直接切断主机电源。命令格式如下:
halt [选项]
常用参数及含义如下表所示。
2、poweroff命令
默认情况下,该命令用于回写缓冲区,并关闭系统,同时断开主机电源。命令格式如下:
poweroff [选项]
poweroff常用参数及含义如下表所示。
3、init 0命令
命令init 0也可以实现关闭系统,同时断开主机电源,因为在inittab文件中,定义了运行级别0为停机。
4、reboot命令 init 6
reboot命令可以用于重新启动Linux系统,格式如下:
reboot [选项]
reboot常用参数及含义如下表所示。
5、shutdown命令
该命令的功能强于上面给出的halt等命令,它可以实现系统注销,关机和重新启动。命令格式如下:
shutdown [选项]
shutdown常用参数及含义如下表所示。
二、ps命令
可以使用如下的命令来查看系统进程的详细情况。这些命令需要管理员的身份才能使用。
该命令可以查看进程的详细状况,使用格式如下:
ps [选项]
常用参数及含义如下表所示。
在终端命令提示符下执行ps –aux或ps aux命令后,执行结果如图所示。
程序执行的结果中,共11个字段,各字段的含义如下:
USER字段:进程的属主
PID字段:进程号PID
%CPU字段:进程的CPU占用率
%MEM字段:进程内存占用率
VSZ字段:虚拟内存占用量
RSS字段:物理内存占用量
TTY字段:运行进程的终端号
STAT字段:进程状态- START字段:进程的启动时间
TIME字段:进程消耗的CPU时间
COMMAND字段:启动进程的命令参数
其中,进程状态,即STAT字段,可显示内容如下:
D:不可中断的睡眠状态。
R:正在运行可中在队列中可过行的。
S:处于休眠状态。
T:停止或被追踪。
<:高优先级的进程
N:低优先级的进程
W:进入内存交换(从内核2.6开始无效)。
X:死掉的进程。
Z:僵尸进程。
三、top命令
该命令用来动态显示运行中的进程。与ps命令类似,都是用来显示当前系统中正在运行的进程。但是top命令能够在运行后,在指定的时间间隔更新显示信息,可以在使用top命令时加上-d 来指定显示信息更新的时间间隔。
在top命令执行后,可以按下按键得到对显示的结果进行排序:
“M”键:根据内存使用量来排序。
“P”键:根据CPU占有率来排序。
“T”键:根据进程运行时间的长短来排序。
“U”键:可以根据后面输入的用户名来筛选进程。
“K”键:可以根据后面输入的PID来杀死进程。
“q”键:退出。
“h”键:获得帮助。
四、nice和renice命令可以用于在命令行方式下设置一个进程的优先级
- 其中nice通过指定优先级启动一个特定的进程
- renice命令则用于调整已经运行的进程的优先级
nice命令用于在启动进程时设置其优先级。基本使用格式如下:
nice [-priority] 程序名
其中参数priority表示优先级,取值范围为-20~19。该命令可以使指定的程序以priority指定的优先级运行。例如,可以在终端提示符下输入如下的命令来按指定的优先级运行vim程序。
[root@myhost root]# vi & (默认情况下,优先级为0)
[root@myhost root]# nice -18 vi & (优先级为18)
[root@myhost root]# nice --18 vi & (优先级为-18)
用ps -l命令来验证nice命令执行的结果。
在RedHat Linux 9系统中,如果进程启动后需要重新调整优先级,可以使用renice命令。该命令在重新指定进程运行优先级时,需要指定进程的进程号PID,而不是进程名,因为在系统中可能存在多个同名进程在运行。
renice命令的使用格式如下:
renice priority 进程号 或 renice [选项] priority
该命令常用参数及含义如下表所示。
- 其中参数priority表示优先级,取值范围为-20~19。该命令能以指定的优先级priority重新设置由进程号指定的进程的优先级。
- 需要注意的是renice与nice命令不同,在重设进程优先级时,不需要在优先级前使用连字符“-”。
例如,重设上例中进程号2710对应的vim进程的优先级,可以在终端提示符下使用如下的命令:
[root@myhost root]# renice -10 2710 (优先级重设为-10)
五、kill命令
在RedHat Linux 9中提供了kill和killall两个工具向系统进程发送信号。
kill用于向进程号指定的进程发送信号,以区别系统中多个同名进程。
如果希望同时向多个同名进程发送信号,就可以使用killall工具。
kill [选项] 进程号
该命令的常用参数及含义如下表所示。
kill可以向进程发送的信号可以使用kill -l命令列出
killall的使用格式如下:
killall [选项] 进程名
该命令的常用参数及含义如下表所示。
注意:如果kill和killall没有指定信号,默认发送SIGKILL(信号编号为9)信号。
另外,当某个守护进程被重新配置或修改后,可以使用kill命令向其发送HUP信号来重启该守护进程,以便重新加载修改后的配置文件。
例如,要重启xinetd(进程号为2178),可以在终端提示符下使用如下的命令:
[root@myhost root]# kill -HUP 2178
六、文本编辑 vi
打开文件
vim /path/to/somefile
vim +# :打开文件,并定位于第#行
vim +:打开文件,定位至最后一行
vim +/PATTERN : 打开文件,定位至第一次被PATTERN匹配到的行的行首
关闭文件
按esc键后输入
:q 退出 没有动过文件
:wq 保存并退出 动过了,不后悔
:q! 不保存并退出 动过了,后悔了
:w 保存
:w! 强行保存
:x 保存并退出
vi能够在同一个窗口中一次打开多个文件,打开多个文件的方法是在终端的命令主提示符下输入:
[root@myhost root]# vi vi_file vi_test
vi还可以在多个窗口中打开多个文件,如在终端命令主提示符下输入如下命令,打开如图所示的文本,不过需要给vi程序传递一个参数-o。
[root@myhost root]# vi -o vi_file vi_test
七、使用命令行管理用户
在RedHat Linux 9中添加用户账号可以使用adduser或useradd命令,因为adduser命令是指向useradd命令的一个链接,因此,这两个命令的使用格式完全一样。
useradd命令的使用格式如下:
useradd [参数] 新建用户账号
常用参数和含义见下表。
例: 建立jack账号,其主目录为/home/tom、归属于tom组、账号信息为generaluser、用户shell为/bin/bash、账号有效期到2008年12月1日。
[root@myhostroot]# useradd –d /home/tom –g 500 -c “general user” –s /bin/bash –e 2008-12-1 jack
在RedHat Linux 9中,超级用户可以使用passwd命令为普通用户设置或修改用户口令。用户也可以直接使用该命令来修改自己的口令,而无需在命令后面使用用户名。该命令的常用格式为:
passwd [参数] 用户名
常用的参数及含义如表所示。
删除用户
该命令的使用格式如下:
userdel [-r] [用户名]
如果使用参数-r,则表示在删除用户的同时,将该用户的主目录一并删除。
修改用户属性
在RedHat Linux 9中,除了在添加用户时指定用户的主目录、登录时的shell和所属的组外,还可以在用户创建后,使用usermod命令来修改用户的这些信息。usermod命令的使用格式如下:
usermod [选项] [用户名]
usermod命令的参数及含义
使用命令行方式管理组,添加工作组
groupadd命令用于向系统新增一个组,新增的组账号在默认的情况下最小从500开始。通常的情况下,其命令格式如下:
groupadd [选项] [组名]
groupadd工具无需使用参数,但在某些特殊情况下,需要使用如下表所示的参数。
向系统新增一个系统组testg组,其GID为480。具体操作如下,完成后用使用tail命令查看详细情况。
[root@myhost root]# groupadd –g 480 testg
八、文件的基本操作
1、查看文件信息
ls —— 是英文单词list的简写,其功能为列出目录的内容,使用相应的参数可以查看文件的相关信息,是用户最常用的命令之一,它类似于DOS下的dir命令。对于每个目录,该命令将列出其中的所以子目录与文件。对于每个文件,ls将输出其文件名以及所要求的其他信息。输出条目按字母顺序排序。未给出目录名或文件名时,默认情况下就显示当前目录的信息。该命令的语法如下:
ls [参数] 目录或文件
常用参数及含义如下表所示。
使用ls命令查看root目录下的文件信息。在命令提示符下执行如下命令,执行结果如下图所示。
[root@myhost root]# ls -l
图中列出的信息共分为7列,各列含义如下图所示。
2、查看文件内容
head命令
该命令用于从文件头部查看文件,默认情况下只能阅读文件的前十行,也可以通过指定一个数字选项来改变要显示的行数。如果没有接文件名,那么将会显示用户从键盘上输入的字符。该命令格式如下:
head [参数] 文件名
常用参数及含义如下表所示。
tail命令
使用tail命令可以查看文件结尾内容,默认显示组后十行。这有助于查看日志文件的最后十行来阅读重要的系统消息,还可以使用tail来观察日志文件被更新的过程。该命令使用命令如下:
tail [参数] 文件名
常用参数及含义如下表所示。
cat命令
cat命令可以用来查看文件内容,也可以用于即合并文件。还可以利用cat命令从键盘读取数据。该命令格式如下:
cat [参数] 文件名
常用参数及含义如下表所示。
more命令
在文件过长无法在一屏上显示时,如果使用cat命令来查看其内容,会出现快速滚屏,使得用户无法看清文件的内容,此时可以使用more命令。和cat命令类似,more可将文件内容显示在屏幕上,但是它每次只显示一页,按下空格键可以显示下一页,按下q键退出显示,按下h键可以获取帮助。此外,该命令还可以在文件中搜索指定的字符串。其格式如下:
more [参数] 文件名
常用的参数及含义如下表所示。
less命令
less命令作用和more命令类似,可用于浏览文本文件的内容。不同的是,less命令允许用户使用光标键反复浏览文本。另外,less可以不读入整个文本文件,因此在处理大型文件时速度较快。与more命令相比,less命令的功能更加前大。其基本格式如下:
less [参数] 文件名
常用的参数及含义如下表所示。
3、.创建文件
在Linux系统中,可以利用touch命令来创建文件,同时touch还可以修改文件的存取和修改日期。指定时间,touch就会将文件的存取时间、修改时间设置为系统的当前时间。该命令的格式如下:
touch [参数] 文件名
常用参数及含义如下表所示。如果touch命令没有
将上例创建的file1文件的最后修改时间修改为2008年12月28日。 在命令提示符下执行如下命令,执行结果如下图所示。 [root@myhost root]# touch -m -t “12282008” file1
4、删除文件
rm命令可以删除一个目录中的一个或多个文件或目录,也可以将某个目录及其下的所以文件及子目录均删除。删除链接文件时,只是断开了链接,原文件保持不变。该命令的基本使用格式如下:
rm [参数] 文件名
常用参数及含义如下表所示。
注意:使用rm命令要小心,因为文件删除后不能恢复。为了防止文件误删,可以在rm后使用-i参数以逐个确认要删除的文件。若确认删除,输入y,文件将被删除,否则输入其他任何字符放弃删除
使用rm命令分别进行交互式删除和强制删除。在命令提示符下分别执行如下命令,执行结果如下图所示。
[root@myhost root]# rm –i file1
[root@myhost root]# rm –f file1
使用“rm -i file1”命令时采用了交互式执行方式,询问是否删除file1文件。“rm -f file1”命令时采用了强制执行方式,直接删除指定的文件。
5、切换工作目录
cd 目录名
例如,切换到/usr/bin/可用如下命令:
[root@myhost root]# cd /usr/bin
切换到当前用户的主目录可用如下命令:
[root@myhost root]# cd ~
切换到当前目录的上两层可用如下命令:
[root@myhost root]# cd …/…
6、显示当前路径
使用pwd命令可以显示当前的工作目录,该命令很简单,直接输入pwd即可,后面不带参数。
7、新建目录
可使用mkdir命令创建一个新的目录。需要注意的是新建目录的名称不能与当前目录中已有的目录或文件同名,并且目录创建者必须对当前目录具有写权限。该命令格式如下:
mkdir [参数] 目录名
常用参数及含义如下表所示。
使用mkdir命令分别创建目录dir1、dir2,在dir1中创建目录dir3,在dir2中创建目录dir4,并使用touch命令在dir2中创建文件file2。
8、删除目录
删除空目录可以使用rmdir命令,该命令是从一个目录中删除一个或多个子目录项。需要注意的是,一个目录被删除之前必须是空的。删除某一个目录时,必须具有对其父目录的写权限。如果要删除的目录不空,将产生错误提示。该命令的基本使用格式如下:
rmdir [-p] 目录
命令中选项含义如下。
参数-p表示递归删除目录,当子目录删除后,其父目录为空时也一同被删除。命令执行完毕后,显示相应信息。
此外,使用rm –r也可删除目录及其下的文件和子目录。
9、复制、移动和重名文件
- 复制
cp命令的功能是将给出的文件或目录复制到另一个文件或目录中,相当于DOS下的copy命令。该命令可以同时复制多个源文件到目标目录中,在进行文件复制的同时,可以指定目标文件的名称。其基本使用格式如下:
cp [参数] 源文件或目录 目标文件或目录
常用参数及含义如下表所示。
- 移动或重命名文件
用户可以使用mv命令来移动文件或目录,也可以给文件或目录重命名。它的用法相当于DOS下的ren和move的组合。该命令格式如下:
mv [参数] 源文件或目录 目标文件或目录
常用参数及含义如下表所示。
使用mv命令将file3文件移动到/home目录下,并用ls命令查看结果。 在终端提示符下输入如下命令,执行结果如下图所示。
[root@myhost root]# ls 查看移动前当前目录下文件
[root@myhost root]# mv file3 /home 移动file3文件到/home目录
[root@myhost root]# ls 查看移动后当前目录下文件
[root@myhost root]# ls /home 查看移动后/home目录下文件
使用mv命令将file4文件重名为file1,并用ls命令查看结果。 在终端提示符下输入如下命令,执行结果如下图所示。
[root@myhost root]# ls
[root@myhost root]# mv file4 file1
[root@myhost root]# ls
九、挂载文件系统
在Linux系统中,磁盘设备被挂接到一个已存在的目录上,以后的磁盘的存取就变成了对该挂接目录的读写访问。通常选择已存在的空目录作为挂接目录,因为如果挂接目录已经包含文件,在挂接操作完成后,原文件将临时被挂接磁盘中的文件覆盖,直到从系统中卸载该磁盘为止。
文件系统的挂载,可以在系统引导过程中自动加载,也可以使用命令手工挂载。
使用命令手工挂载
挂载文件系统的命令为mount,该命令语法如下:
mount [选项] [设备文件名] [挂接点]
常用参数及含义如表所示。
如果系统已挂接的磁盘不再使用,为了节省系统资源,可以将该磁盘从系统中卸下。与挂载相比,卸载文件系统简单很多。卸载文件系统使用umount命令,其格式如下:
umount [选项] 设备文件名或挂接目录
常用参数及含义如表所示。
注意:umount通常不能卸载正在使用的文件系统。如果必须卸载可以使用-f参数,或重启系统。