Chinaunix首页 | 论坛 | 博客
  • 博客访问: 9265805
  • 博文数量: 299
  • 博客积分: 9955
  • 博客等级: 中将
  • 技术积分: 4177
  • 用 户 组: 普通用户
  • 注册时间: 2008-02-27 20:59
文章分类
文章存档

2015年(1)

2012年(2)

2011年(9)

2010年(47)

2009年(108)

2008年(132)

我的朋友

分类: LINUX

2008-02-27 22:12:41

为月份,DD 为日,hh 为小时,mm 为分钟,CC 为年份前两位数字,YY 为年份后两位数字,ss 为秒数 
把计 : 
-d datestr : 显示 datestr 中所设定的时间 (非系统时间
--help : 显示辅助讯息 
-s datestr : 将系统时间设为 datestr 中所设定的时间 
-u : 显示目前的格林威治时间 
--version : 显示版本编号 
例子 : 
显示时间后跳行,再显示目前日期 : 
date +%T%n%D 
显示月份与日数 : 
date +%B %d 
显示日期与设定时间(12:34:56) : 
date --date 12:34:56 
注意 : 
当你不希望出现无意义的 0 (比如说 1999/03/07),则可以在标记中插入 - 符号,比如说 date +%-H:%-M:%-S 会把时分秒中无意义的 0 给去掉,像是原本的 08:09:04 会变为 8:9:4。另外,只有取得权限者(比如说 root)才能设定系统时间。 
当你以 root 身分更改了系统时间之后,请记得以 clock -w 来将系统时间写入 CMOS 中,这样下次重新开机时系统时间才会持续抱持最新的正确值。 

名称 : sleep 
使用权限 : 所有使用者 
使用方式 : sleep [--help] [--version] number[smhd] 
说明 : sleep 可以用来将目前动作延迟一段时间 
参数说明 : 
--help : 显示辅助讯息 
--version : 显示版本编号 
number : 时间长度,后面可接 sm d 
其中 s 为秒, 分钟,为小时,为日数 
例子 : 
显示目前时间后延迟 1 分钟,之后再次显示时间 : 
date;sleep 1m;date 

名称: time 
使用权限: 所有使用者 
使用方式: time [options] COMMAND [arguments] 
说明: time 指令的用途,在于量测特定指令执行时所需消耗的时间及系统资源等资讯。例如 CPU 时间、记忆体、输入输出等等。需要特别注意的是,部分资讯在 Linux 上显示不出来。这是因为在 Linux 上部分资源的分配函式与 time 指令所预设的方式并不相同,以致于 time 指令无法取得这些资料。

把计? 
-o or --output=FILE 
设定结果输出档。这个选项会将 time 的输出写入 所指定的档案中。如果档案已经存在,系统将覆写其内容。 
-a or --append 
配合 -o 使用,会将结果写到档案的末端,而不会覆盖掉原来的内容。 
-f formAT or --format=formAT 
 formAT 字串设定显示方式。当这个选项没有被设定的时候,会用系统预设的格式。不过你可以用环境变数 time 来设定这个格式,如此一来就不必每次登入系统都要设定一次。 
一般设定上,你可以用 
\t 
表示跳栏,或者是用 
\n 
表示换行。每一项资料要用 % 做为前导。如果要在字串中使用百分比符号,就用 。(学过 C 语言的人大概会觉得很熟悉) 
time 指令可以显示的资源有四大项,分别是: 
Time resources 
Memory resources 
IO resources 
Command info 
详细的内容如下: 

Time Resources 
执行指令所花费的时间,格式是:[hour]:minute:second。请注意这个数字并不代表实际的 CPU 时间。 
执行指令所花费的时间,单位是秒。请注意这个数字并不代表实际的 CPU 时间。 
指令执行时在核心模式(kernel mode)所花费的时间,单位是秒。 
指令执行时在使用者模式(user mode)所花费的时间,单位是秒。 
执行指令时 CPU 的占用比例。其实这个数字就是核心模式加上使用者模式的 CPU 时间除以总时间。 

Memory Resources 
执行时所占用的实体记忆体的最大值。单位是 KB 
执行时所占用的实体记忆体的平均值,单位是 KB 
执行程序所占用的记忆体总量(stack+data+text)的平均大小,单位是 KB 
执行程序的自有资料区(unshared data area)的平均大小,单位是 KB 
执行程序的自有堆叠(unshared stack)的平均大小,单位是 KB 
执行程序间共享内容(shared text)的平均值,单位是 KB 
系统记忆体页的大小,单位是 byte。对同一个系统来说这是个常数 

IO Resources 
此程序的主要记忆体页错误发生次数。所谓的主要记忆体页错误是指某一记忆体页已经置换到置换档(swap file)中,而且已经分配给其他程序。此时该页的内容必须从置换档里再读出来。 
此程序的次要记忆体页错误发生次数。所谓的次要记忆体页错误是指某一记忆体页虽然已经置换到置换档中,但尚未分配给其他程序。此时该页的内容并未被破坏,不必从置换档里读出来 
此程序被交换到置换档的次数 
此程序被强迫中断(像是分配到的 CPU 时间耗尽)的次数 
此程序自愿中断(像是在等待某一个 I/O 执行完毕,像是磁碟读取等等)的次数 
此程序所输入的档案数 
此程序所输出的档案数 
此程序所收到的 Socket Message 
此程序所送出的 Socket Message 
此程序所收到的信号 ( Signal )数量 

Command Info 
执行时的参数以及指令名称 
指令的结束代码 ( Exit Status ) 
-p or --portability 
这个选项会自动把显示格式设定成为:

real %e 
user %U 
sys %S 
这么做的目的是为了与 POSIX 规格相容。 
-v or --verbose 
这个选项会把所有程式中用到的资源通通列出来,不但如一般英文语句,还有说明。对不想花时间去熟习格式设定或是刚刚开始接触这个指令的人相当有用。 
范例: 
利用下面的指令 
time -v ps -aux 
我们可以获得执行 ps -aux 的结果和所花费的系统资源。如下面所列的资料: 
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND 
root 1 0.0 0.4 1096 472 ? S Apr19 0:04 init 
root 2 0.0 0.0 0 0 ? SW Apr19 0:00 [kflushd] 
root 3 0.0 0.0 0 0 ? SW Apr19 0:00 [kpiod] 
...... 
root 24269 0.0 1.0 2692 996 pts/3 R 12:16 0:00 ps -aux 
Command being timed: \"ps -aux\" 
User time (seconds): 0.05 
System time (seconds): 0.06 
Percent of CPU this job got: 68% 
Elapsed (wall clock) time (h:mm:ss or m:ss): 0:00.16 
Average shared text size (kbytes): 0 
Average unshared data size (kbytes): 0 
Average stack size (kbytes): 0 
Average total size (kbytes): 0 
Maximum resident set size (kbytes): 0 
Average resident set size (kbytes): 0 
Major (requiring I/O) page faults: 238 
Minor (reclaiming a frame) page faults: 46 
Voluntary context switches: 0 
Involuntary context switches: 0 
Swaps: 0 
File system inputs: 0 
File system outputs: 0 
Socket messages sent: 0 
Socket messages received: 0 
Signals delivered: 0 
Page size (bytes): 4096 
Exit status: 0 

名称: uptime 
使用权限: 所有使用者 
使用方式: uptime [-V] 
说明: uptime 提供使用者下面的资讯,不需其他参数: 
现在的时间 
系统开机运转到现在经过的时间 
连线的使用者数量 
最近一分钟,五分钟和十五分钟的系统负载 
参数: -V 显示版本资讯。 
范例: uptime 
其结果为: 
10:41am up 5 days, 10 min, 1 users, load average: 0.00, 0.00, 1.99 
名称:chfn 
使用权限:所有使用者 
用法:shell>> chfn 
说明:提供使用者更改个人资讯,用于 finger and mail username 
范例: 
shell>> chfn 
Changing finger information for user

Password: [del] 
Name[]:Johnney Huang ### 提供 finger 时的资料 
Office[]:NCCU 
Office Phone[]: [del] 
Home Phone[]: [del] 

名称:chsh 
使用权限:所有使用者 
用法:shell>> chsh 
说明:更改使用者 shell 设定 
范例: 
shell>> chsh 
Changing fihanging shell for user1 
Password: [del] 
New shell [/bin/tcsh]: ### [是目前使用的 shell] 
[del] 
shell>> chsh -l ### 展示 /etc/shells 档案内容 
/bin/bash 
/bin/sh 
/bin/ash 
/bin/bsh 
/bin/tcsh 
/bin/csh 

” finger [返回
名称: finger 
使用权限: 所有使用者 
使用方式: finger [options] user[@address] 
说明:finger 可以让使用者查询一些其他使用者的资料。会列出来的资料有: 
Login Name 
User Name 
Home directory 
Shell 
Login status 
mail status 
.plan 
.project 
.forward 
其中 .plan .project  .forward 就是使用者在他的 Home Directory 里的 .plan  .project  .forward 等档案里的资料。如果没有就没有。finger 指令并不限定于在同一伺服器上查询,也可以寻找某一个远端伺服器上的使用者。只要给一个像是 E-mail address 一般的地址即可。 
把计? 
-l 
多行显示。 
-s 
单行显示。这个选项只显示登入名称,真实姓名,终端机名称,闲置时间,登入时间,办公室号码及电话号码。如果所查询的使用者是远端伺服器的使用者,这个选项无效。 
范例:下列指令可以查询本机管理员的资料: 
finger root 
其结果如下: 
Login: root Name: root 
Directory: /root Shell: /bin/bash 
Never logged in. 
No mail. 
No Plan. 
名称:last 
使用权限:所有使用者 
使用方式:shell>> last [options] 
说明:显示系统开机以来获是从每月初登入者的讯息 
把计? 
-R 省略 hostname 的栏位 
-num 展示前 num  
username 展示 username 的登入讯息 
tty 限制登入讯息包含终端机代号 
范例: 
shell>> last -R -2 
johnney pts/1 Mon Aug 14 20:42 still logged in 
johnney pts/0 Mon Aug 14 19:59 still logged in 
wtmp begins Tue Aug 1 09:01:10 2000 ### /var/log/wtmp 

shell>> last -2 minery 
minery pts/0 140.119.217.115 Mon Aug 14 18:37 - 18:40 (00:03) 
minery pts/0 140.119.217.115 Mon Aug 14 17:22 - 17:24 (00:02) 
wtmp begins Tue Aug 1 09:01:10 2000 
名称:login 

这个命令都不会就不要干算了!呵呵我也不在这里多费笔墨耽误大家美好青春了^_^ 

名称:passwd 
使用权限:所有使用者 
使用方式:passwd [-k] [-l] [-u [-f] [-d] [-S] [username] 
说明:用来更改使用者的密码 
参数: 
-k 
-l 
-u 
-f 
-d 关闭使用者的密码认证功能使用者在登入时将可以不用输入密码只有具备 root 权限的使用者方可使用
-S 显示指定使用者的密码认证种类只有具备 root 权限的使用者方可使用
[username] 指定帐号名称

名称 : who 
使用权线 : 所有使用者都可使用 
使用方式 : who - [husfV] [user] 
说明 : 显示系统中有那些使用者正在上面,显示的资料包含了使用者 ID,使用的终端机,从那边连上来的,上线时间,呆滞时间,CPU 使用量,动作等等。 
把计 : 
-h : 不要显示标题列 
-u : 不要显示使用者的动作/工作 
-s : 使用简短的格式来显示 
-f : 不要显示使用者的上线位置 
-V : 显示程式版本 
名称:/etc/aliases 
使用权限:系统管理者 
使用方式: 请用 newaliases 更新资料库 
说明: 
sendmail 会使用一个在 /etc/aliases 中的档案做使用者名称转换的动作。当 sendmail 收到一个要送给 xxx 的信时,它会依据 aliases档的内容送给另一个使用者。这个功能可以创造一个只有在信件系统内才有效的使用者。例如 mailing list 就会用到这个功能,在 mailinglist 中,我们可能会创造一个叫 redlinux@link.ece.uci.edu  mailinglist,但实际上并没有一个叫 redlinux 的使用者。实际 aliases 档的内容是将送给这个使用者的信都收给 mailing list 处理程式负责分送的工作。 
/etc/aliases 是一个文字模式的档案,sendmail 需要一个二进位格式的 /etc/aliases.dbnewaliases 的功能传是将 /etc/aliases 转换成一个 sendmail 所能了解的资料库。范例: 
# newaliases 
下面命令会做相同的事, 
# sendmail -bi 
相关命令
mail, mailq, newaliases, sendmail 
” mail [返回
名称:mail 
使用权限:所有使用者 

使用方式:mail [-iInv] [-s subject] [-c cc-addr] [-b bcc-addr] user1 [user 2 ...] 

说明: 
mail 不仅只是一个指令, mail 还是一个电子邮件程式,不过利用 mail 来读信的人应该很少吧!对于系统管理者来说 mail 就很有用,因为管理者可以用 mail 写成 script ,定期寄一些备忘录提醒系统的使用者。 

参数: 
忽略 tty 的中断讯号。 (interrupt) 
强迫设成互动模式。 (Interactive) 
列印出讯息,例如送信的地点、状态等等。 (verbose) 
不读入 mail.rc 设定档。 
邮件标题。 
c cc 邮件地址。 
b bcc 邮件地址。 

范例: 

将信件送给一个或以上的电子邮件地址,由于没有加入其他的选项,使用者必须输入标题与信件的内容等。而 user2 没有主机位置,就会送给邮件伺服器的 user2 使用者。

mail user1@email.address 
mail user1@email.address user2 
 mail.txt 的内容寄给 user2 同时 cc  user1 。如果将这一行指令设成 cronjob 就可以定时将备忘录寄给系统使用者。 
mail -s 标题 -c user1 user2 < mail.txt 
指令:mesg 
使用权限 : 所有使用者 
使用方式 : mesg [y|n] 
说明  决定是否允许其他人传讯息到自己的终端机介面把计 ? 
y : 允许讯息传到终端机介面上。 
n : 不允许讯息传到终端机介面上  
如果没有设定,则讯息传递与否则由终端机界面目前状态而定。 
例子 : 
改变目前讯息设定,改成不允许讯息传到终端机介面上 : 
mesg n 

 mesg 相关的指令有: talkwritewall 

名称:/etc/aliases 
使用权限:系统管理者 
使用方式: newaliases 
说明: 
sendmail 会使用一个在 /etc/aliases 中的档案做使用者名称转换的动作。当 sendmail 收到一个要送给 xxx 的信时,它会依据 aliases档的内容送给另一个使用者。这个功能可以创造一个只有在信件系统内才有效的使用者。例如 mailing list 就会用到这个功能,在 mailinglist 中,我们可能会创造一个叫 redlinux@link.ece.uci.edu  mailinglist,但实际上并没有一个叫 redlinux 的使用者。实际 aliases 档的内容是将送给这个使用者的信都收给 mailing list 处理程式负责分送的工作。 
/etc/aliases 是一个文字模式的档案,sendmail 需要一个二进位格式的 /etc/aliases.dbnewaliases 的功能传是将 /etc/aliases 转换成一个 sendmail 所能了解的资料库。 
参数:没有任何参数。 范例: 
# newaliases 
下面命令会做相同的事, 
# sendmail -bi 
相关命令
mail, mailq, newaliases, sendmail 
名称 : talk 
使用权限 : 所有使用者 
使用方式 : 
talk person [ttyname] 
说明 : 与其他使用者对谈 
把计 : 
person : 预备对谈的使用者帐号,如果该使用者在其他机器上,则可输入 person@machine.name 
ttyname : 如果使用者同时有两个以上的 tty 连线,可以自行选择合适的 tty 传讯息 
例子.1 : 
与现在机器上的使用者Rollaend对谈,此时 Rollaend 只有一个连线 : 
talk Rollaend 
接下来就是等Rollaend回应,若Rollaend接受,则Rollaend输入 `talk jzlee`即可开始对谈,结束请按 ctrl+c 
例子.2 :linuxfab.cx上的使用者Rollaend对谈,使用pts/2来对谈 : 
talk Rollaend@linuxfab.cx pts/2 

接下来就是等Rollaend回应,若Rollaend接受,则Rollaend输入 `talk jzlee@jzlee.home`即可开始对谈,结束请按 ctrl+c 
注意 : 若萤幕的字会出现不正常的字元,试着按 ctrl+l 更新萤幕画面。 

名称 : wall 
使用权限 : 所有使用者 
使用方式 : 
wall [ message ] 

使用说明: 
wall 会将讯息传给每一个 mesg 设定为 yes 的上线使用者。当使用终端机介面做为标准传入时讯息结束时需加上 EOF (通常用 Ctrl+D)?

阅读(371) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~