学习总结:自行学习如下命令

命令格式,常用选项,示例,说明

date、clock、hwclock、cal

ls、cd、pwd、tty、whereis、which

stat、echo、shutdown、halt、reboot、poweoff

who、w、whoami

1、 date

使用者:所有用户

语法:date [参数]... [+格式]

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

命令解析:打印或设置系统日期和时间,可以根据指定的格式显示当前时间或设置系统时间.

命令帮助:man date; info date

命令使用:

必要的参数:

-d<字符串>  显示字符串所指的日期与时间。字符串前后必须加上双引号。

-s<字符串>  根据字符串来设置日期与时间。字符串前后必须加上双引号。

-u  显示GMT。

--help  在线帮助。

--version  显示版本信息

格式: 控制着输出格式. 仅当选项指定为全球时间时本格式才有效

%H 小时(以00-23来表示)。

%I 小时(以01-12来表示)。

%K 小时(以0-23来表示)。

%l 小时(以0-12来表示)。

%M 分钟(以00-59来表示)。

%P AM或PM。

%r 时间(含时分秒,小时以12小时AM/PM来表示)。

%s 总秒数。起算时间为1970-01-01 00:00:00 UTC。

%S 秒(以本地的惯用法来表示)。

%T 时间(含时分秒,小时以24小时制来表示)。

%X 时间(以本地的惯用法来表示)。

%Z 市区。

%a 星期的缩写。

%A 星期的完整名称。

%b 月份英文名的缩写。

%B 月份的完整英文名称。

%c 日期与时间。只输入date指令也会显示同样的结果。

%d 日期(以01-31来表示)。

%D 日期(含年月日)。

%j 该年中的第几天。

%m 月份(以01-12来表示)。

%U 该年中的周数。

%w 该周的天数,0代表周日,1代表周一,异词类推。

%x 日期(以本地的惯用法来表示)。

%y 年份(以00-99来表示)。

%Y 年份(以四位数来表示)。

%n 在显示时,插入新的一行。

%t 在显示时,插入tab。

MM 月份(必要)

DD 日期(必要)

hh 小时(必要)

mm 分钟(必要)

ss 秒(选择性)

使用实例

a. 显示当前时间:

imageimageimageimage

#直接使用

b. –d <字符串>,

image#显示50天后日期

image#显示三周后日期

image#时间转时间戳

image#时间戳转时间

#明天的日期,也可写成date -d tomorrow +%Y%m%d

同理:昨天的日期可写成date -d last-day +%Y%m%d或date -d yesterday +%Y%m%d

使用 ago 指令,您可以得到过去的日期

image#25天前的日期

使用负数以得到相反的日期:

image#显示5月14之前两周的那天日期

c. -s<字符串>  根据字符串来设置日期与时间。字符串前后必须加上双引号。

image

2、 clock、hwclock

clock 命令:设置或者显示硬件时间的近似值

必要参数:
--adjust 自动调整硬件时钟时间
--debug 运行时,输出详细的处理过程
--directisa 不通过设备文件/etc/rtc,直接对硬件时钟进行存取
--getepoch 输出硬件时钟的数值到标准输出
--hctosys 时钟同步,使系统时钟和硬件时钟同步
--se--date 设置硬件时间
--show 显示硬件时钟到标准输出
--systohc 系统时间写入硬件时钟
--test 进行测试
--utc 将硬件时钟的时间设置为UTC

image

hwclock命令,与clock命令是同一个命令,主要用来查询和设置硬件时钟(query and set the hardware clock (RTC))。RTC=Real Time Clock,也就是硬件时钟。在Linux中有硬件时钟与系统时钟等两种时钟。硬件时钟是指主机板上的时钟设备,也就是通常可在BIOS画面设定的时钟。系统时钟则是指kernel中 的时钟。所有Linux相关指令与函数都是读取系统时钟的设定。因为存在两种不同的时钟,那么它们之间就会存在差异。根据不同参数设置,hwclock命令既可以将硬件时钟同步到系统时钟,也可以将系统时钟同步到硬件时钟。

常用参数:

-r, --show         读取并打印硬件时钟(read hardware clock and print result )
  -s, --hctosys      将硬件时钟同步到系统时钟(set the system time from the hardware clock )
  -w, --systohc     将系统时钟同步到硬件时钟(set the hardware clock to the current system time )

示例:

image

a.修改时间并同步到硬件时钟

image

PS:要想使系统时间准确,最好使用ntp方式同步时间.

使用ntpdate命令从网络同步时间,再同步到硬件时钟

image

小结:修改Linux时间一般涉及到3个命令: date, clockhwclock

date:修改系统当前时间(但这个修改重启后就时效的,因此需要使用clock命令)

clock:-r 查看CMOS时间;-w将当前系统时间写入到CMOS中

hwclock:查看或更改硬件时钟.

注:机器里有两个时钟,即系统时间和硬件时间。硬件时钟从根本上讲是CMOS时钟;而系统时钟是由内核维护的,它是从1969年末(即传说中的标志Unix时×××端的那个拂晓)开始算起的累积秒数。而在Linux系统中,起作用的是系统时钟。在启动时,它靠读取硬件时钟获得计时起点,而不是靠记忆计时。你可以通过BIOS修改系统硬件时钟,或者如果你不想重起机器,那就用hwclock命令.

3、 cal

语法:cal [选项] [参数]

选项:

-l:显示单月输出;

-3:显示临近三个月的日历;

-s:将星期日作为月的第一天;

-m:将星期一作为月的第一天;

-j:显示“罗马”日期;

-y:显示当前年的日历
参数:

月:指定月份;

年:指定年份。
示例1.单独输入cal,即显示当月日历

image

示例2.显示罗马日历

image

示例3.显示指定月份日历

image

4、 ls 显示目录内容

语法:ls(选项)(参数)
选项:

-a:显示所有档案及目录(ls内定将档案名或目录名称为“.”的视为影藏,不会列出);

-A:显示除影藏文件“.”和“..”以外的所有文件列表;

-C:多列显示输出结果。这是默认选项;

-l:与“-C”选项功能相反,所有输出信息用单列格式输出,不输出为多列;

-F:在每个输出项后追加文件的类型标识符,具体含义:“*”表示具有可执行权限的普通文件,“/”表示目录,“@”表示符号链接,“|”表示命令管道FIFO,“=”表示sockets套接字。当文件为普通文件时,不输出任何标识符;

-b:将文件中的不可输出的字符以反斜线“”加字符编码的方式输出;

-c:与“-lt”选项连用时,按照文件状态时间排序输出目录内容,排序的依据是文件的索引节点中的ctime字段。与“-l”选项连用时,则排序的一句是文件的状态改变时间;

-d:仅显示目录名,而不显示目录下的内容列表。显示符号链接文件本身,而不显示其所指向的目录列表;

-f:此参数的效果和同时指定“aU”参数相同,并关闭“lst”参数的效果;

-i:显示文件索引节点号(inode)。一个索引节点代表一个文件; --file-type:与“-F”选项的功能相同,但是不显示“*”;

-k:以KB(千字节)为单位显示文件大小;

-l:以长格式显示目录下的内容列表。输出的信息从左到右依次包括文件名,文件类型、权限模式、硬连接数、所有者、组、文件大小和文件的最后修改时间等;

-m:用“,”号区隔每个文件和目录的名称;

-n:以用户识别码和群组识别码替代其名称;

-r:以文件名反序排列并输出目录内容列表;

-s:显示文件和目录的大小,以区块为单位;

-t:用文件和目录的更改时间排序;

-L:如果遇到性质为符号链接的文件或目录,直接列出该链接所指向的原始文件或目录;

-R:递归处理,将指定目录下的所有文件及子目录一并处理;

--full-time:列出完整的日期与时间;

--color[=WHEN]:使用不同的颜色高亮显示不同类型的。

参数:目录:指定要显示列表的目录,也可以是具体的文件。

示例1:

image

示例2:显示当前目录下包括影藏文件在内的所有文件列表

image

示例3:显示长格式列表(也可显示权限)

image

5、cd 切换工作目录

语法:cd (选项) (参数)
选项:

-p 如果要切换到的目标目录是一个符号连接,直接切换到符号连接指向的目标目录

-L 如果要切换的目标目录是一个符号的连接,直接切换到字符连接名代表的目录,而非符号连接所指向的目标目录。

- 当仅实用"-"一个选项时,当前工作目录将被切换到环境变量"OLDPWD"所表示的目录。
PS:

cd 进入用户主目录; cd ~ 进入用户主目录; cd - 返回进入此目录之前所在的目录; cd .. 返回上级目录(若当前目录为“/“,则执行完后还在“/";".."为上级目录的意思); cd ../.. 返回上两级目录; cd !$ 把上个命令的参数作为cd参数使用。
示例:进入用户主目录

image

6、pwd:以绝对路径的方式显示用户当前工作目录。
--help:显示帮助信息;

--version:显示版本信息。
示例:长款当前目录

image

 

7、tty: 打印连接到标准

输入的终端的文件名

tty(选项)

-s, --silent, --quiet 什么也不显示,只返回退出状态值
      --help            显示此帮助信息并退出
      --version         显示版本信息并退出

示例:查看当前登录的终端

image

 

8、whereis: 用来定位指令的

二进制程序、源代码文件和man手册页等相关文件的路径。
语法:whereis(选项)(参数)

选项:

-b:只查找二进制文件;

-B<目录>:只在设置的目录下查找二进制文件;

-f:不显示文件名前的路径名称;

-m:只查找说明文件;

-M<目录>:只在设置的目录下查找说明文件;

-s:只查找原始代码文件;

-S<目录>只在设置的目录下查找原始代码文件;

-u:查找不包含指定类型的文件。
示例1:

image

示例2:只将二进制文件查找出来

image

 

9、which: 用于查找并显示给定命令的绝对路径
语法:which(选项)(参数)

选项:

-n<文件名长度>:制定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名;

-p<文件名长度>:与-n参数相同,但此处的<文件名长度>包含了文件的路径;

-w:指定输出时栏位的宽度; -V:显示版本信息。
示例1: 找出pwd命令路径

image

 

Ps: 说明:which是根据使用者所配置的 PATH 变量内的目录去搜寻可运行档的!所以,不同的 PATH 配置内容所找到的命令当然不一样的!

10、stat: 显示文件或文件系统状态

语法:stat(选项)(参数)

选项:

-L:支持符号连接;

-f:显示文件系统状态而非文件状态;

-t:以简洁方式输出信息;

--help:显示指令的帮助信息;

--version:显示指令的版本信息。

参数:指定要显示信息的普通文件或者文件系统对应的设备文件名。

示例1:对比ls显示

image

Ps: Size :文件大小

Access:最后访问时间

Modify:最后修改时间

Change:状态更改时间(由系统维护,无法随意修改)

示例2:显示文件系统状态

image

 

11、echo: 用于在shell中打印shell变量的值,或者直接输出指定的字符串。

语法:echo(选项)(参数)

选项:

-n 不输出行尾的换行符.

-e 允许对下面列出的加反斜线转义的字符进行解释.

-E 禁止对在STRINGs中的那些序列进行解释.

--help 显示帮助并退出(须单独运行)

--version 输出版本信息并退出(须单独运行)

在没有 -E 的情况下,可承认并可以内置替换以下序列

使用-e选项时,若字符串中出现以下字符,则特别加以处理,而不会将它当成一般文字输出:

\a 发出警告声;

\b 删除前一个字符;

\c 最后不加上换行符号;

\f 换行但光标仍旧停留在原来的位置;

\n 换行且光标移至行首;

\r 光标移至行首,但不换行;

\t 插入tab;

\v 与\f相同;

\\ 插入\字符;

\nnn 插入nnn(八进制)所代表的ASCII字符;

参数:变量:指定要打印的变量。

示例1:输出hello word

image

示例2:使用echo打印带有色彩的文字

image

\e[1;31m 将颜色设置为红色

\e[0m 将颜色重新置回

※颜色码:

重置=0,黑色=30,红色=31,绿色=32,×××=33,蓝色=34,洋红=35,青色=36,白色=37

背景色:

image

※颜色码:重置=0,黑色=40,红色=41,绿色=42,×××=43,蓝色=44,洋红=45,青色=46,白色=47

12、shutdown: 用来系统关机命令。shutdown指令可以关闭所有程序,并依用户的需要,进行重新开机或关机的动作

语法:shutdown(选项)(参数)

-a 使用 /etc/shutdown.allow 来验证身份。

-t sec 通知 init(8) 在转换到其它运行级别前,发送警告 (warning) 信号后延时 (sec) 秒数后再发送关闭 (kill) 信号。

-k 并非真正关机,只向所有人显示警告信息。

-r 重启。

-h 停机。

-n [DEPRECATED(不应再使用)] 不调用 init(8) 程序进行关机操作,而由自己进行。不建议用户使用这种关机方式,它的结果一般也不是你希望的那样。

-f 重启时跳过磁盘检测。

-F 重启时强制磁盘检测。

-c 取消运行中的 shutdown 进程。不可能为此选项指定 time 参数,但你可以在命令行输入一条解释消息来向所有用户说明。(一般的shutdown指令可以用按“+”号来进行中断)

time 关机时间。

warning-message 发送给所有用户的消息

示例1:使用shutdown在某个时刻重启

image

Ps: now = 0 立刻执行相应操作; +m 及m分钟之后执行相应操作

13、poweroff: 关闭计算机操作系统并且切断系统电源。

语法:poweroff(选项)

选项:

-n:关闭操作系统时不执行sync操作;

-w:不真正关闭操作系统,仅在日志文件“/var/log/wtmp”中;

-d:关闭操作系统时,不将操作写入日志文件“/var/log/wtmp”中添加相应的记录; -f:强制关闭操作系统;

-i:关闭操作系统之前关闭所有的网络接口;

-h:关闭操作系统之前将系统中所有的硬件设置为备用模式。

示例1:

image

 

14、halt: 用来关闭正在运行的Linux操作系统。halt命令会先检测系统的runlevel,若runlevel为0或6,则关闭系统,否则即调用shutdown来关闭系统。

-d:不要在wtmp中记录;

-f:不论目前的runlevel为何,不调用shutdown即强制关闭系统;

-i:在halt之前,关闭全部的网络界面;

-n:halt前,不用先执行sync;

-p:halt之后,执行poweroff;

-w:仅在wtmp中记录,而不实际结束系统。

示例:halt -p //关闭系统后关闭电源。 halt -d //关闭系统,但不留下纪录。

15、reboot: 用来重新启动正在运行的Linux操作系统。等于shutdown –h

-d:重新开机时不把数据写入记录文件/var/tmp/wtmp。本参数具有“-n”参数效果;

-f:强制重新开机,不调用shutdown指令的功能;

-i:在重开机之前,先关闭所有网络界面;

-n:重开机之前不检查是否有未结束的程序;

-w:仅做测试,并不真正将系统重新开机,只会把重开机的数据写入/var/log目录下的wtmp记录文件。

16、who: 显示目前登录系统的用户信息。执行who命令可得知目前有那些用户登入系统,单独执行who命令会列出登入帐号,使用的终端机,登入时间以及从何处登入或正在使用哪个X显示器。

whoami命令用于打印当前有效的用户名称,相当于执行id -un命令。