学习总结:自行学习如下命令
命令格式,常用选项,示例,说明
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.显示当前时间:
#直接使用
b.–d <字符串>,
#显示50天后日期
#显示三周后日期
#时间转时间戳
#时间戳转时间
#明天的日期,也可写成date -d tomorrow +%Y%m%d
同理:昨天的日期可写成date -d last-day +%Y%m%d或date -d yesterday +%Y%m%d
使用 ago 指令,您可以得到过去的日期
#25天前的日期
使用负数以得到相反的日期:
#显示5月14之前两周的那天日期
c. -s<字符串> 根据字符串来设置日期与时间。字符串前后必须加上双引号。
2、 clock、hwclock
clock 命令:设置或者显示硬件时间的近似值
必要参数:
--adjust 自动调整硬件时钟时间
--debug 运行时,输出详细的处理过程
--directisa 不通过设备文件/etc/rtc,直接对硬件时钟进行存取
--getepoch 输出硬件时钟的数值到标准输出
--hctosys 时钟同步,使系统时钟和硬件时钟同步
--se--date 设置硬件时间
--show 显示硬件时钟到标准输出
--systohc 系统时间写入硬件时钟
--test 进行测试
--utc 将硬件时钟的时间设置为UTC
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 )
示例:
a.修改时间并同步到硬件时钟
PS:要想使系统时间准确,最好使用ntp方式同步时间.
使用ntpdate命令从网络同步时间,再同步到硬件时钟
小结:修改Linux时间一般涉及到3个命令: date, clock, hwclock
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,即显示当月日历
示例2.显示罗马日历
示例3.显示指定月份日历
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:
示例2:显示当前目录下包括影藏文件在内的所有文件列表
示例3:显示长格式列表(也可显示权限)
5、cd 切换工作目录
语法:cd (选项) (参数)
选项:
-p 如果要切换到的目标目录是一个符号连接,直接切换到符号连接指向的目标目录
-L 如果要切换的目标目录是一个符号的连接,直接切换到字符连接名代表的目录,而非符号连接所指向的目标目录。
- 当仅实用"-"一个选项时,当前工作目录将被切换到环境变量"OLDPWD"所表示的目录。
PS:
cd 进入用户主目录; cd ~ 进入用户主目录; cd - 返回进入此目录之前所在的目录; cd .. 返回上级目录(若当前目录为“/“,则执行完后还在“/";".."为上级目录的意思); cd ../.. 返回上两级目录; cd !$ 把上个命令的参数作为cd参数使用。
示例:进入用户主目录
6、pwd:以绝对路径的方式显示用户当前工作目录。
--help:显示帮助信息;
--version:显示版本信息。
示例:长款当前目录
7、tty: 打印连接到标准输入的终端的文件名
tty(选项)
-s, --silent, --quiet 什么也不显示,只返回退出状态值
--help 显示此帮助信息并退出
--version 显示版本信息并退出
示例:查看当前登录的终端
8、whereis: 用来定位指令的二进制程序、源代码文件和man手册页等相关文件的路径。
语法:whereis(选项)(参数)
选项:
-b:只查找二进制文件;
-B<目录>:只在设置的目录下查找二进制文件;
-f:不显示文件名前的路径名称;
-m:只查找说明文件;
-M<目录>:只在设置的目录下查找说明文件;
-s:只查找原始代码文件;
-S<目录>只在设置的目录下查找原始代码文件;
-u:查找不包含指定类型的文件。
示例1:
示例2:只将二进制文件查找出来
9、which: 用于查找并显示给定命令的绝对路径
语法:which(选项)(参数)
选项:
-n<文件名长度>:制定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名;
-p<文件名长度>:与-n参数相同,但此处的<文件名长度>包含了文件的路径;
-w:指定输出时栏位的宽度; -V:显示版本信息。
示例1:找出pwd命令路径
示例2:
Ps: 说明:which是根据使用者所配置的 PATH 变量内的目录去搜寻可运行档的!所以,不同的 PATH 配置内容所找到的命令当然不一样的!
10、stat: 显示文件或文件系统状态
语法:stat(选项)(参数)
选项:
-L:支持符号连接;
-f:显示文件系统状态而非文件状态;
-t:以简洁方式输出信息;
--help:显示指令的帮助信息;
--version:显示指令的版本信息。
参数:指定要显示信息的普通文件或者文件系统对应的设备文件名。
示例1:对比ls显示
Ps: Size :文件大小
Access:最后访问时间
Modify:最后修改时间
Change:状态更改时间(由系统维护,无法随意修改)
示例2:显示文件系统状态
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
示例2:使用echo打印带有色彩的文字
\e[1;31m 将颜色设置为红色
\e[0m 将颜色重新置回
※颜色码:
重置=0,黑色=30,红色=31,绿色=32,黄色=33,蓝色=34,洋红=35,青色=36,白色=37
背景色:
※颜色码:重置=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在某个时刻重启
Ps: now = 0 立刻执行相应操作; +m 及m分钟之后执行相应操作
13、poweroff: 关闭计算机操作系统并且切断系统电源。
语法:poweroff(选项)
选项:
-n:关闭操作系统时不执行sync操作;
-w:不真正关闭操作系统,仅在日志文件“/var/log/wtmp”中;
-d:关闭操作系统时,不将操作写入日志文件“/var/log/wtmp”中添加相应的记录; -f:强制关闭操作系统;
-i:关闭操作系统之前关闭所有的网络接口;
-h:关闭操作系统之前将系统中所有的硬件设置为备用模式。
示例1:
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显示器。