Linux 其他命令

本文最后更新于:2024年9月8日 晚上

Linux 其他命令

clear

  • 清屏。
1
clear

man

  • 查看各个命令的使用文档。
1
man cp

date

  • date 命令可以用来显示或设定系统的日期与时间。
1
date [-u] [-d datestr] [-s datestr] [--utc] [--universal] [--date=datestr] [--set=datestr] [--help] [--version] [+FORMAT] [MMDDhhmm[[CC]YY][.ss]]
  • -d datestr :显示 datestr 中所设定的时间(非系统时间)

  • -s datestr :将系统时间设为 datestr 中所设定的时间。

  • -u :显示目前的格林威治时间。

  • 在显示方面,使用者可以设定欲显示的格式,格式设定为一个加号后接数个标记,其中可用的标记列表如下:

  • 时间方面:

    • % :印出 %
    • %n :下一行。
    • %t :跳格。
    • %H :小时(00… 23)
    • %I :小时(01… 12)
    • %k :小时(0… 23)
    • %l :小时(1… 12)
    • %M :分钟(00… 59)
    • %p :显示本地 AM 或 PM
    • %r :直接显示时间(12 小时制,格式为 hh:mm: ss [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 为秒数。

  • 当您不希望出现无意义的 0 时(比如说 1999/03/07),则可以在标记中插入 - 符号,比如说 date ‘+%-H:%-M:%-S’ 会把时分秒中无意义的 0 给去掉,像是原本的 08:09:04 会变为 8:9:4,另外,只有取得权限者(比如说 root)才能设定系统时间。

  • 当您以 root 身份更改了系统时间之后,请记得以 clock -w 来将系统时间写入 CMOS 中,这样下次重新开机时系统时间才会持续保持最新的正确值。

实例

  • 显示当前时间。
1
2
3
4
5
6
7
8
9
10
11
12
# date
512 14:08:12 CST 2010
# date '+%c'
20100512日星期三 140902秒。
# date '+%D' // 显示完整的时间
05/12/10
# date '+%x' // 显示数字日期,年份两位数表示
20100512日。
# date '+%T' // 显示日期,年份用四位数表示
14:09:31
# date '+%X' // 显示24小时的格式
140939秒。
  • 按自己的格式输出。
1
2
# date '+usr_time: $1:%M %P -hey'
usr_time: $1:16 下午 -hey
  • 显示时间后跳行,再显示目前日期。
1
date '+%T%n%D'
  • 显示月份与日数。
1
date '+%B %d'
  • 显示日期与设定时间(12:34:56)
1
date --date '12:34:56'

time

  • Linux time 命令的用途,在于量测特定指令执行时所需消耗的时间及系统资源等资讯。
  • 例如 CPU 时间,记忆体,输入输出等等,需要特别注意的是,部分资讯在 Linux 上显示不出来,这是因为在 Linux 上部分资源的分配函式与 time 指令所预设的方式并不相同,以致于 time 指令无法取得这些资料。
1
time [options] COMMAND [arguments]
  • -o 或 --output=FILE:设定结果输出档,这个选项会将 time 的输出写入所指定的档案中,如果档案已经存在,系统将覆写其内容。
  • -a 或 --append:配合 -o 使用,会将结果写到档案的末端,而不会覆盖掉原来的内容。
  • -f FORMAT 或 --format=FORMAT:以 FORMAT 字串设定显示方式,当这个选项没有被设定的时候,会用系统预设的格式,不过你可以用环境变数 time 来设定这个格式,如此一来就不必每次登入系统都要设定一次。

实例

1
2
3
4
5
6
# time date
Sun Mar 26 22:45:34 GMT-8 2006

real 0m0.136s
user 0m0.010s
sys 0m0.070s
  • 在以上实例中,执行命令"time date" (见第 1 行)
  • 系统先执行命令"date",第 2 行为命令"date"的执行结果。
  • 第 3-6 行为执行命令"date"的时间统计结果,其中第 4 行"real"为实际时间,第 5 行"user"为用户 CPU 时间,第 6 行"sys"为系统 CPU 时间。
  • 以上三种时间的显示格式均为 MMmNN[. FFF]s

本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!