分享
 
 
 

linux常见命令(8)

王朝system·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

时程表的格式如下 :

f1 f2 f3 f4 f5 program

其中 f1 是表示分钟,f2 表示小时,f3 表示一个月份中的第几日,f4 表示月份,f5 表示一个星期中的第几天。program 表示要执行的程式。

当 f1 为 * 时表示每分钟都要执行 program,f2 为 * 时表示每小时都要执行程式,其余类推

当 f1 为 a-b 时表示从第 a 分钟到第 b 分钟这段时间内要执行,f2 为 a-b 时表示从第 a 到第 b 小时都要执行,其余类推

当 f1 为 */n 时表示每 n 分钟个时间间隔执行一次,f2 为 */n 表示每 n 小时个时间间隔执行一次,其余类推

当 f1 为 a, b, c,... 时表示第 a, b, c,... 分钟要执行,f2 为 a, b, c,... 时表示第 a, b, c...个小时要执行,其余类推

使用者也可以将所有的设定先存放在档案 file 中,用 crontab file 的方式来设定时程表。

例子 :

每月每天每小时的第 0 分钟执行一次 /bin/ls :

0 7 * * * /bin/ls

在 12 月内, 每天的早上 6 点到 12 点中,每隔 20 分钟执行一次 /usr/bin/backup :

0 6-12/3 * 12 * /usr/bin/backup

周一到周五每天下午 5:00 寄一封信给 alex@domain.name :

0 17 * * 1-5 mail -s "hi" alex@domain.name < /tmp/maildata

每月每天的午夜 0 点 20 分, 2 点 20 分, 4 点 20 分....执行 echo "haha"

20 0-23/2 * * * echo "haha"

注意 :

当程式在你所指定的时间执行后,系统会寄一封信给你,显示该程式执行的内容,若是你不希望收到这样的信,请在每一行空一格之后加上 > /dev/null 2>&1 即可。

名称 : date

使用权限 : 所有使用者

使用方式 :

date [-u] [-d datestr] [-s datestr] [--utc] [--universal] [--date=datestr] [--set=datestr] [--help] [--version] [+FORMAT] [MMDDhhmm[[CC]YY][.ss]]

说明 :

date 可以用来显示或设定系统的日期与时间,在显示方面,使用者可以设定欲显示的格式,格式设定为一个加号后接数个标记,其中可用的标记列表如下 :

时间方面 :

% : 印出 %

%n : 下一行

%t : 跳格

%H : 小时(00..23)

%I : 小时(01..12)

%k : 小时(0..23)

%l : 小时(1..12)

%M : 分钟(00..59)

%p : 显示本地 AM 或 PM

%r : 直接显示时间 (12 小时制,格式为 hh:mms [AP]M)

%s : 从 1970 年 1 月 1 日 00:00:00 UTC 到目前为止的秒数

%S : 秒(00..61)

%T : 直接显示时间 (24 小时制)

%X : 相当于 %H:%M:%S

%Z : 显示时区

日期方面 :

%a : 星期几 (Sun..Sat)

%A : 星期几 (Sunday..Saturday)

%b : 月份 (Jan..Dec)

%B : 月份 (January..December)

%c : 直接显示日期与时间

%d : 日 (01..31)

%D : 直接显示日期 (mm/dd/yy)

%h : 同 %b

%j : 一年中的第几天 (001..366)

%m : 月份 (01..12)

%U : 一年中的第几周 (00..53) (以 Sunday 为一周的第一天的情形)

%w : 一周中的第几天 (0..6)

%W : 一年中的第几周 (00..53) (以 Monday 为一周的第一天的情形)

%x : 直接显示日期 (mm/dd/yy)

%y : 年份的最后两位数字 (00.99)

%Y : 完整年份 (0000..9999)

若是不以加号作为开头,则表示要设定时间,而时间格式为 MMDDhhmm[[CC]YY][.ss],其中 MM 为月份,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 : 时间长度,后面可接 s、m、h 或 d

其中 s 为秒,m 为 分钟,h 为小时,d 为日数

例子 :

显示目前时间后延迟 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

E 执行指令所花费的时间,格式是:[hour]:minuteecond。请注意这个数字并不代表实际的 CPU 时间。

e 执行指令所花费的时间,单位是秒。请注意这个数字并不代表实际的 CPU 时间。

S 指令执行时在核心模式(kernel mode)所花费的时间,单位是秒。

U 指令执行时在使用者模式(user mode)所花费的时间,单位是秒。

P 执行指令时 CPU 的占用比例。其实这个数字就是核心模式加上使用者模式的 CPU 时间除以总时间。

Memory Resources

M 执行时所占用的实体记忆体的最大值。单位是 KB

t 执行时所占用的实体记忆体的平均值,单位是 KB

K 执行程序所占用的记忆体总量(stack+data+text)的平均大小,单位是 KB

D 执行程序的自有资料区(unshared data area)的平均大小,单位是 KB

p 执行程序的自有堆叠(unshared stack)的平均大小,单位是 KB

X 执行程序间共享内容(shared text)的平均值,单位是 KB

Z 系统记忆体页的大小,单位是 byte。对同一个系统来说这是个常数

IO Resources

F 此程序的主要记忆体页错误发生次数。所谓的主要记忆体页错误是指某一记忆体页已经置换到置换档(swap file)中,而且已经分配给其他程序。此时该页的内容必须从置换档里再读出来。

R 此程序的次要记忆体页错误发生次数。所谓的次要记忆体页错误是指某一记忆体页虽然已经置换到置换档中,但尚未分配给其他程序。此时该页的内容并未被破坏,不必从置换档里读出来

W 此程序被交换到置换档的次数

c 此程序被强迫中断(像是分配到的 CPU 时间耗尽)的次数

w 此程序自愿中断(像是在等待某一个 I/O 执行完毕,像是磁碟读取等等)的次数

I 此程序所输入的档案数

O 此程序所输出的档案数

r 此程序所收到的 Socket Message

s 此程序所送出的 Socket Message

k 此程序所收到的信号 ( Signal )数量

Command Info

C 执行时的参数以及指令名称

x 指令的结束代码 ( 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:mms or ms): 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.db。newaliases 的功能传是将 /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 ,定期寄一些备忘录提醒系统的使用者。

参数:

i 忽略 tty 的中断讯号。 (interrupt)

I 强迫设成互动模式。 (Interactive)

v 列印出讯息,例如送信的地点、状态等等。 (verbose)

n 不读入 mail.rc 设定档。

s 邮件标题。

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 相关的指令有: talk,write,wall。

名称:/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.db。newaliases 的功能传是将 /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

第一頁    上一頁    第8頁/共15頁    下一頁    最後頁
第01頁 第02頁 第03頁 第04頁 第05頁 第06頁 第07頁 第08頁 第09頁 第10頁 
第11頁 第12頁 第13頁 第14頁 第15頁 
 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有