与系统管理有关的命令
wall命令
这个命令的功能是对全部已登录的用户发送信息,用户可以先把要发送的信息写好存入一个文件中,然后输入:
# wall < 文件名
这样就能对所有的用户发送信息了。
在上面的例子中符号“<”表示输入重定向,有关它的含义和用法请参阅第十章的有关内容。
例如:
# wall ‘Thank you!'
Broadcast message from root (tty1) Fri Nov 26 14:15:07 1999…
Thank you!
#
执行以上命令后,用户的屏幕上显示出“Thank you!”信息后,并不出现系统提示符$(#),再次按回车键后,屏幕出现系统提示符。
write命令
write命令的功能是向系统中某一个用户发送信息。
该命令的一般格式为:
write 用户帐号 [终端名称]
例如:
$ write xxq
hello
此时系统进入发送信息状态,用户可以输入要发送的信息,输入完毕,希望退出发送状态时,按组合键即可。
上述命令执行的结果是,用户xxq的屏幕上会显示:
message from test@test.tlc.com.cn tty1 at 15:51…
hello
EOF
mesg指令
mesg命令设定是否允许其他用户用write命令给自己发送信息。如果允许别人给自己发送信息,输入命令:
# mesg y
否则,输入:
# mesg n
对于超级用户,系统的默认值为 n;而对于一般用户系统的默认值为y。
如果mesg后不带任何参数,则显示当前的状态是y还是n,如:
$ mesg
is y
或:
# mesg
is n
sync命令
sync命令是在关闭Linux系统时使用的。
用户需要注意的是,不能用简单的关闭电源的方法关闭系统,因为Linux象其他Unix系统一样,在内存中缓存了许多数据,在关闭系统时需要进行内存数据与硬盘数据的同步校验,保证硬盘数据在关闭系统时是最新的,只有这样才能确保数据不会丢失。一般正常的关闭系统的过程是自动进行这些工作的,在系统运行过程中也会定时做这些工作,不需要用户干预。
sync命令是强制把内存中的数据写回硬盘,以免数据的丢失。用户可以在需要的时候使用此命令。该命令的一般格式为:
sync
shutdown命令
shutdown 命令可以安全地关闭或重启Linux系统,它在系统关闭之前给系统上的所有登录用户提示一条警告信息。该命令还允许用户指定一个时间参数,可以是一个精确的时间,也可以是从现在开始的一个时间段。精确时间的格式是hh:mm,表示小时和分钟;时间段由“+”和分钟数表示。系统执行该命令后,会自动进行数据同步的工作。该命令的一般格式为:
shutdown [选项] [时间] [警告信息]
命令中各选项的含义为:
- k 并不真正关机,而只是发出警告信息给所有用户。
- r 关机后立即重新启动。
- h 关机后不重新启动。
- f 快速关机,重启动时跳过fsck。
- n 快速关机,不经过init程序。
- c 取消一个已经运行的shutdown。
需要特别说明的是,该命令只能由超级用户使用。
例1:系统在十分钟后关机,并且马上重新启动。
# shutdown – r +10
例2:系统马上关机,并且不重新启动。
# shutdown – h now
free命令
free命令的功能是查看当前系统内存的使用情况,它显示系统中剩余及已用的物理内存和交换内存,以及共享内存和被核心使用的缓冲区。该命令的一般格式为:
free [-b | -k | -m]
命令中各选项的含义如下:
-b 以字节为单位显示。
-k 以K字节为单位显示。
-m 以兆字节为单位显示。
例:
$ free
total used free shared buffers cached
Mem: 63076 32020 31056 8204 16360 6048
-/+ buffers/cache: 9612 53464
Swap: 64476 2240 62236
uptime命令
uptime命令显示系统已经运行了多长时间,它依次显示下列信息:现在时间、系统已经运行了多长时间、目前有多少登录用户、系统在过去的1分钟、5分钟和15分钟内的平均负载。该命令的一般格式为:
uptime
例:
# uptime
4:43pm up 1 day, 5:51, 2 user, load average: 0.01, 0.01, 0.00
与用户有关的命令
passwd命令
出于系统安全考虑,Linux系统中的每一个用户除了有其用户名外,还有其对应的用户口令。因此使用useradd命令增加时,还需使用passwd命令为每一位新增加的用户设置口令;用户以后还可以随时用passwd命令改变自己的口令。该命令的一般格式为:
passwd [用户名]
其中用户名为需要修改口令的用户名。只有超级用户可以使用“passwd 用户名”修改其他用户的口令,普通用户只能用不带参数的passwd命令修改自己的口令。该命令的使用方法如下:
输入passwd< Enter>;
在(current) UNIX passwd:下输入当前的口令
在new password:提示下输入新的口令(在屏幕上看不到这个口令):
系统提示再次输入这个新口令。
输入正确后,这个新口令被加密并放入/etc/shdow文件。选取一个不易被破译的口令是很重要的。选取口令应遵守如下规则:
口令应该至少有六位(最好是八位)字符;
口令应该是大小写字母、标点符号和数字混杂的。
超级用户修改其他用户(xxq)的口令的过程如下,
# passwd xxq
New UNIX password:
Retype new UNIX password:
passwd: all authentication tokens updated successfully
#
su命令
这个命令非常重要。它可以让一个普通用户拥有超级用户或其他用户的权限,也可以让超级用户以普通用户的身份做一些事情。普通用户使用这个命令时必须有超级用户或其他用户的口令。如要离开当前用户的身份,可以打exit。
该命令的一般形式为:
su [选项] [? ] [使用者帐号]
说明:若没有指定使用者帐号,则系统预设值为超级用户root。
该命令中各选项的含义分别为:
? c 执行一个命令后就结束。
? 加了这个减号的目的是使环境变量和欲转换的用户相同。
? m 保留环境变量不变。
例1: 变成root用户
$ su ?
password: 【输入超级用户的密码】
例2: 变成xu使用者,并执行一个命令就结束。
$ su -xu ? c “rmdir cat1”
其他命令
echo命令
echo命令的功能是在显示器上显示一段文字,一般起到一个提示的作用。该命令的一般格式为:
echo [ -n ] 字符串
其中选项n表示输出文字后不换行;字符串可以加引号,也可以不加引号。用echo命令输出加引号的字符串时,将字符串原样输出;用echo命令输出不加引号的字符串时,将字符串中的各个单词作为字符串输出,各字符串之间用一个空格分割。
例1:
$ echo ‘Thank you !'
Thank you !
例2:
$ echo Thank you !
Thank you !
cal命令
cal命令的功能是显示某年某月的日历。该命令的一般格式为:
cal [选项] [月 [年]]
命令中各选项的含义为:
- j 显示出给定月中的每一天是一年中的第几天(从1月1日算起)。
- y 显示出整年的日历。
例1 显示1999年11月的日历。
$ cal 11 1999
November 1999
Su Mo Tu We Th Fr Sa
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
例2 显示1999年11月的每一天是一年中的第几天。
$ cal – j 11 1999
November 1999
Sun Mon Tue Wed Thu Fri Sat
305 306 307 308 309 310
311 312 313 314 315 316 317
318 319 320 321 322 323 324
325 326 327 328 329 330 331
332 333 334
date命令
date命令的功能是显示和设置系统日期和时间。该命令的一般格式为:
date [选项] 显示时间格式(以+开头,后面接格式)
date 设置时间格式
命令中各选项的含义分别为:
-d datestr, --date datestr 显示由datestr描述的日期
-s datestr, --set datestr 设置datestr 描述的日期
-u, --universal 显示或设置通用时间
时间域
% H 小时(00..23)
% I 小时(01..12)
% k 小时(0..23)
% l 小时(1..12)
% M 分(00..59)
% p 显示出AM或PM
% r 时间(hh:mm:ss AM或PM),12小时
% s 从1970年1月1日00:00:00到目前经历的秒数
% S 秒(00..59)
% T 时间(24小时制)(hh:mm:ss)
% X 显示时间的格式(%H:%M:%S)
% Z 时区
日期域
% a 星期几的简称( Sun..Sat)
% A 星期几的全称( Sunday..Saturday)
% b 月的简称(Jan..Dec)
% B 月的全称(January..December)
% c 日期和时间( Mon Nov 8 14:12:46 CST 1999)
% d 一个月的第几天(01..31)
% D 日期(mm/dd/yy)
% h 和%b选项相同
% j 一年的第几天(001..366)
% m 月(01..12)
% w 一个星期的第几天(0代表星期天)
% W 一年的第几个星期(00..53,星期一为第一天)
% x 显示日期的格式(mm/dd/yy)
% y 年的最后两个数字( 1999则是99)
% Y 年(例如:1970,1996等)
需要特别说明的是,只有超级用户才能用date命令设置时间,一般用户只能用date命令显示时间。
例1:用指定的格式显示时间。
$ date ‘+This date now is =>%x ,time is now =>%X ,thank you !'
This date now is =>11/12/99 ,time is now =>17:53:01 ,thank you !
例2:用预定的格式显示当前的时间。
# date
Fri Nov 26 15:20:18 CST 1999
例3:设置时间为下午14点36分。
# date -s 14:36:00
Fri Nov 26 14:15:00 CST 1999
例4:设置时间为1999年11月28号。
# date -s 991128
Sun Nov 28 00:00:00 CST 1999
clear命令
clear命令的功能是清除屏幕上的信息,它类似于DOS中的 cls命令。清屏后,提示符移动到屏幕左上角。
例如:$ clear
思考题
1. 验证新用户wch是否已注册成功,并修改该用户的口令。
2. 如果希望系统在五分钟后关机,并马上重新启动,应该如何操作?
3. 如果你是以普通用户身份访问系统,是否可以查看当前系统内存的使用情况?如果可以,如何查看?
4. 如何显示当前系统的时间?
5. 如何将系统时间设置为1999年12月25日上午10点16分?
6. 请显示2000年1月的日历,在显示之前请先清屏
感谢TurboLinux公司提供本教程。