文中 `-->` 为开头的为命令行的输出.
涉及到的命令有,date,clock,hwclock,cal,ls,cd,pwd,tty,whereis,which,stat,echo,shutdown,halt,reboot,poweroff,who,w,whoami
## date
date - print or set the system date and time
#SYNOPSIS date [OPTION]... [+FORMAT] date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]] #OPTION #-d DATESTR, --date=DATESTR 显示时间描述的字符串,而不是“现在” $ date -d "2015-05-04" --> Mon May 4 00:00:00 CST 2015 $ date --date="2015-05-04" --> Mon May 4 00:00:00 CST 2015 $ date -d "2 days ago" --> Wed Aug 19 21:09:18 CST 2015 #-s DATESTR, --set=DATESTR 设置时间描述的字符串 $ date -s "2015-05-04" $ date --set="2015-05-04" $ date -s "2 days ago" #-u, --utc, --universal 输出或者设置协调的通用时间 $ date -u --> Fri Aug 21 13:09:38 UTC 2015 $ date --utc $ date --universal #FORMAT # '%a' //简短的星期名 $ date '+%a' // Sun # '%A' 星期的全称 $ date '+%A' // Sunday # '%b' 月份的简称 $ date '+%b' // Jan # '%B' 月份的全称 $ date '+%B' // January # '%c' 显示时间和日期 $ date '+%c' // Thu 20 Aug 2015 11:43:39 PM CST # '%C' 显示世纪,像%Y省略了后两位数字 $ date '+%C' // 20 # '%d' 每月的第几天( $ date '+%d' // 20 # '%D' 显示日期,想'%m/%d/%y' $ date '+%d' // 08/20/15 # '%e' 月份中的天数,用空格填充 $ date '+%e' // ' 5' # '%F' 年月日,像%Y-%m-%d $ date '+%F' // 2015-08-20 # '%g' 年份的后两位 $ date '+%g' // 15 # '%G' 使用基于周的年 $ date '+%G' // 2015 # '%h' 参考 %b # '%H' 24小时制(0..23) $ date '+%G' // 23 # '%I' 12小时制(1..12) $ date '+%I' // 12 # '%j' 一年中的天数(001..366) $ date '+%j' // 233 # '%k' 参考%H # '%l' 参考%I # '%m' 显示月份(01..12) $ date '+%m' // 08 # '%M' 显示分钟数(00-59) $ date '+%M' // 04 # '%n' 换行 # '%N' 纳秒(000000000..999999999) $ date '+%N' // 236423051 # '%p' AM或PM $ date '+p' // PM # '%P' am或pm(小写) $ date '+p' // pm # '%r' 时间(含时分秒,小时以12小时AM/PM来表示) $ date '+r' // 09:21:53 PM # '%R' 24小时加上分解,想%H:%M $ date '+R' // 21:23 # '%s' 从1970-01-01 00:00:00 UTC开始的秒数 $ date '+s' // 1440163456 # '%S' 显示秒数(0-60) $ date '+S' // 31 # '%T' 时间 像 %H:%M:%S $ date '+T' // 21:26:28 # '%u' 星期(1-7),1代表星期一 $ date '+u' // 5 # '%U' 一年中的周数(01-53) $ date '+U' // 33 # '%w' 一周的星期几(0-6)0是星期日 $ date '+w' // 5 # '%x' 按本地日期格式显示 $ date '+x' // 08/23/2015 # '%X' 按本地时间格式显示 $ date '+X' // 12:03:05 AM # '%y' 显示年份的后两位 $ date '+y' // 15 # '%Y' 四位数的年份 $ date '+Y' // 2015
## hwclock&clock
hwclock - query and set the hardware clock (RTC) 查询或设置硬件时间
## SYNOPSIS hwclock [functions] [options] ## functions ## -r,--show 阅读硬件时钟和在标准输出打印时间。显示的时间总是在当地时间. $ hwclock -r --> Fri 21 Aug 2015 09:51:06 PM CST -0.378045 seconds $ hwclock --show --> Fri 21 Aug 2015 09:51:55 PM CST -0.329897 seconds ## --set 用给定的时间(--date 选项)设置硬件时间 $ hwclock --set --date='2015-08-21' // 修改后的时间 --> Fri 21 Aug 2015 12:00:09 AM CST -1.036660 seconds $ hwclock --set --date='-4 days' // 修改后的时间 --> Wed 19 Aug 2015 12:24:32 AM CST -0.469782 seconds ## -s, --hctosys 将系统时钟调整为与目前的硬件时钟一致, htc override sys $ hwclock -s --> Wed Aug 19 00:28:23 CST 2015 $ hwclock --hctosys --> Wed Aug 19 00:28:23 CST 2015 ## -w, --systohc 将系统时钟写入硬件时钟 sys to hc $ hwclock -w --> Thu 20 Aug 2015 12:00:19 AM CST -0.298877 seconds $ hwclock --systohc --> Fri 21 Aug 2015 10:03:10 PM CST -1.235380 seconds ## --adjust hwclock每次更改硬件时钟时,都会记录在/etc/adjtime文件中, ## 可使hwclock根据先前的记录来估算硬件时钟的偏差,并用来校正目前的硬件时钟. ## options //待补充
## cal
cal - 显示日历
## SYNOPSIS cal [-smjy13] [[[day] month] year] ## cal 如果没有指定参数,则显示当前月份. $ cal ## -l 显示一个月的日历,这是默认的选项. $ cal -l ## -3 显示上月/当月/下月的日历. $ cal -3 ## -s 显示星期日为一个星期的第一天. $ cal -s ## -m 显示星期一为一个星期的第一天. $ cal -m ## -j 显示在当年中的第几天(一年日期按天算,从1月1号算起,默认显示当前月在一年中的天数) $ cal -j ## -y 显示当年的日历 $ cal -y
## ls
显示目录中的内容,默认显示当前目录,并安装字母顺序排列
## SYNOPSIS ls [OPTION]... [FILE]... ## -a, --all 列出目录下的所有文件,包括以 . 开头的隐含文件 $ ls -a --> . .. .esd-0 .ICE-unix ## -A, --almost-all 列出目录下的所有文件,但不包括(.当前目录)(..父目录) $ ls -a --> .esd-a .ICE-unix ## --author 与-l参数一起使用,显示作者. $ ls -l --author --> drwx------. 2 gdm gdm gdm 4096 Aug 21 21:06 orbit-gdm ## -b, --escape 把文件名中不可输出的字符用反斜杠加字符编号(就象在C语言里一样)的形式列出。 $ ls -b ## --block-size=SIZE =1K,以 k 字节的形式表示文件的大小。 $ ls --block-size=1M --> dr-xr-xr-x. 2 root root 36(k) Aug 21 05:41 bin ## -B, --ignore-backups 忽略以~结尾的备份目录 $ ls --> bak~ lcyan.root.history-timestamp orbit-gdm $ ls -B --> lcyan.root.history-timestamp orbit-gdm ## -c 配合 -lt:根据 ctime 排序及显示 ctime (文件状态最后更改的时间)配合 ## -c -l:显示 ctime 但根据名称排序否则:根据 ctime 排序 $ ls -lt -c $ ls -l -c ## –color[=WHEN] 控制是否使用色彩分辨文件。WHEN 可以是'never'、'always'或'auto'其中之一 $ ls --color=auto ## -d, --directory显示指定的目录,不要解除引用的符号连接. $ ls -d /tmp --> /tmp $ ls --directory /tmp --> /tmp ## -f 对结果不排序, 激活 -aU, 禁止 -ls --color $ ls -f ## -F, --classify 在每个文件后面加上指示符号 $ ls -F --> bak~/ lcyan.root.history-timestamp orbit-gdm/ ## --file-type 同-F,除了不添加' *' ## --format=WORD ## --full-time 参考-l $ ls --full-time --> drwx------. 2 gdm gdm 4096 2015-08-21 21:06:13.856371827 +0800 orbit-gdm ## -g参考-l, 不常用. ## -h, --human-readable 人类可读的.配合-l使用 $ ls -lh ## --si 用1000作为换算单位,而不是1024 $ ls --si --> drwxr-xr-x. 2 root root 4.1k Aug 21 23:26 bak~ ## -H, --dereference-command-line 使用命令列中的符号链接指示的真正目的地 $ ls -H --> traceroute6 -> traceroute 显示为 traceroute ## --hide=PATTERN 不列出匹配到正则表达式的文件 $ ls -l --hide=*.log --> 不显示后缀为.log的文件 ## -i,--inode 显示文件的inode号 $ ls -i --> 266215 drwx------. 2 gdm gdm 4096 Aug 22 07:44 orbit-gdm $ ls --inode --> 266215 drwx------. 2 gdm gdm 4096 Aug 22 07:44 orbit-gdm ## -I, --ignore=PATTERN 参考 --hide ## -k 参考 --block-size=1K $ ls -lk --> drwx------. 2 gdm gdm 4[此处单位为K] Aug 22 07:44 orbit-gdm ## -l 显示为长列表格式 $ ls -l --> drwx------. 2 gdm gdm 4096 Aug 22 07:44 orbit-gdm ## -L, --dereference 符号链接显示为链接的引用,而不是链接本身 $ ls -l --> lrwxrwxrwx. 1 root root 9 Aug 22 08:11 echo -> /bin/echo $ ls -lL --> -rwxr-xr-x. 1 root root 28176 Oct 15 2014 echo ## -m 用逗号填充列表的分隔符 $ ls -m --> pulse-vS2MflCGjzHN, virtual-root.GJeaJi, yum.log ## -n, --numeric-uid-gid 像-l, 但显示的数字是用户和组的ID. $ ls -n --> drwx------. 2 42 42 4096 Aug 22 07:44 orbit-gdm (多了一个组ID) ## -N, --literal 显示原生的名字,不会对控制字符做特殊处理 $ ls -N --> pulse-vS2MflCGjzHN virtual-root.GJeaJi yum.log ## -o 类似于 -l, 但不显示组的信息. $ ls -l --> drwx------. 2 gdm gdm 4096 Aug 22 07:44 orbit-gdm $ ls -o --> drwx------. 2 gdm 4096 Aug 22 07:44 orbit-gdm ## -p, --indicator-style=slash, 制定分隔符,默认文件夹后面是/ $ ls --indicator-style=none ## -q, --hide-control-chars 用?代替非图形字符 ## -Q, --quote-name 条目名称加上双引号 $ ls -Q --> "bak~" "echo" "hackt" "lcyan.root.history-timestamp" ## -r, --reverse 反序,当原列表是排序的情况下 ## -R, --recursive 递归显示文件子目录 ## -s, --size 以块大小为单位列出所有文件的大小 $ ls -si --> 4 drwx------. 2 gdm gdm 4096 Aug 22 07:44 orbit-gdm (前2位) ## -S 按文件大小排序 $ ls -lS --> -rw-r--r--. 1 root root 39384 Aug 22 08:33 lcyan.root.history-timestamp --> drwxr-xr-x. 2 root root 4096 Aug 21 23:26 bak~ --> drwx------. 2 gdm gdm 4096 Aug 22 07:44 orbit-gdm ## --sort=WORD 用指定的规则排,none -U, extension -X, size -S, time -t, version -v $ls -l --sort=extension --> -rw-r--r--. 1 root root 0 Aug 22 08:37 b.dmg --> -rw-------. 1 root root 0 Aug 20 07:51 yum.log --> -rw-r--r--. 1 root root 0 Aug 22 08:36 read.md --> -rw-r--r--. 1 root root 0 Aug 22 08:36 a.tgz $ls -l --sort=time --> -rw-r--r--. 1 root root 0 Aug 22 08:37 b.dmg --> -rw-r--r--. 1 root root 0 Aug 22 08:36 a.tgz --> -rw-r--r--. 1 root root 0 Aug 22 08:36 read.md --> -rw-------. 1 root root 0 Aug 20 07:51 yum.log ## --time=WORD 配合 -l with -l, show time as WORD instead of modification time: ## atime -u, access -u, use -u, ctime -c, or status -c; use specified ## time as sort key if --sort=time $ ls -l --sort=time --time=ctime --> -rw-r--r--. 1 root root 0 Aug 22 08:38 read.md --> -rw-------. 1 root root 0 Aug 22 08:38 yum.log --> -rw-r--r--. 1 root root 0 Aug 22 08:38 a.tgz --> -rw-r--r--. 1 root root 0 Aug 22 08:38 b.dmg ## -t 按修改时间倒序 $ ls -tl --full-time --> -rw-r--r--. 1 root root 0 2015-08-22 08:37:32.922959000 +0800 b.dmg --> -rw-r--r--. 1 root root 0 2015-08-22 08:36:59.016959045 +0800 a.tgz --> -rw-r--r--. 1 root root 0 2015-08-22 08:36:17.796955491 +0800 read.md --> -rw-------. 1 root root 0 2015-08-20 07:51:23.161999794 +0800 yum.log ## -u 配合 -lt:显示访问时间而且依访问时间排序 ## 配合 -l:显示访问时间但根据名称排序 ## 否则:根据访问时间排序 $ ls -ut --> -rw-r--r--. 1 root root 0 Aug 22 08:37 b.dmg --> -rw-r--r--. 1 root root 0 Aug 22 08:36 a.tgz --> -rw-r--r--. 1 root root 0 Aug 22 08:36 read.md --> -rw-------. 1 root root 0 Aug 20 07:51 yum.log $ ls -lu --> -rw-r--r--. 1 root root 0 Aug 22 08:36 a.tgz --> -rw-r--r--. 1 root root 0 Aug 22 08:37 b.dmg --> -rw-r--r--. 1 root root 0 Aug 22 08:36 read.md --> -rw-------. 1 root root 0 Aug 20 07:51 yum.log ## -U 不进行排序;依文件系统原有的次序列出项目 $ ls -lU ## -v 根据版本进行排序 $ ## -X 根据扩展名排 $ ## 还有一些关于selinux的选项,不常用
## cd
改变shell的工作目录
## SYNOPSIS cd: cd [-L|-P] [dir] ## cd 改变当前工作目录到DIR,如果不指定DIR,则默认的DIR是shell变量$HOME的值 $ cd --> /root $ echo $HOME --> /root ## -L 强制进去符号链接目录 $ ls -ld /proc/self --> lrwxrwxrwx 1 root root 64 Aug 22 08:57 self -> 3521 $ cd -L self --> /proc/self ## -P 使用物理目录结构,而不是符号目录 $ ls -ld /proc/self --> lrwxrwxrwx 1 root root 64 Aug 22 08:57 self -> 3521 $ cd -P self --> /proc/3521 ## cd的默认行为是 cd -L
## pwd
pwd是一个内建命令,打印当前工作目录的名字
## SYNOPSIS pwd [-LP] ## -L 打印shell变量$PWD的值,如果它的值是当前工作目录 $ pwd -L --> /etc/ssh $ echo $PWD --> /etc/ssh ## -P 参考cd的-P选项 ## pwd的默认行为是 pwd -L
## tty
打印连接到标准输入的终端的文件名
## SYNOPSIS tty [OPTION]... ## $ tty --> /dev/pts/1 ## -s, --silent, --quiet 什么也不返还,值返回一个退出状态 $ tty -s
## whereis
定位一个命令的二进制文件,源码,手册的位置
## SYNOPSIS whereis [-bmsu] [-BMS directory... -f] filename... ## -b 仅搜索二进制文件的位置 $ whereis -b ls --> ls: /bin/ls ## -m 仅搜索手册章节文件的位置 $ whereis -m ls --> ls: /usr/share/man/man1p/ls.1p.gz /usr/share/man/man1/ls.1.gz ## -m 仅搜索源码文件的位置 $ whereis -s ls --> ls: ## -u 索默认路径下除可执行文件、源代码文件、帮助文件以外的其它文件。 $ ## -B 指定搜索可执行文件的路径。 $ ## -M 指定搜索帮助文件的路径。 $ ## -S 指定搜索源代码文件的路径 $ ## 在使用了-B , -M , -S 任意一个参数时,必须加上 -f 参数, 然后指定要搜索的文件名. $ whereis -B /bin -f ls gcc ## which
显示shell命令的全路径,注意只能找到PATH路径下的命令
## SYNOPSIS which [options] [--] programname [...] ## --all, -a 打印所有匹配的可执行文件的路径在PATH,而不是仅仅是第一. $ which -a tty --> /usr/bin/tty ## --read-alias, -i $ ## --skip-alias 跳过别名 $ which --skip-alias ls --> /bin/ls
## stat
显示文件或文件系统的状态
## SYNOPSIS stat [OPTION]... FILE... ## -L, --dereference 如果是链接文件,则获取原文件信息 $ stat echo File: --> `echo` -> `/bin/echo` --> Size: 9 Blocks: 0 IO Block: 4096 symbolic link --> Device: fd00h/64768dInode: 266232 Links: 1 --> Access: (0777/lrwxrwxrwx) Uid: ( 0/ root) Gid: ( 0/ root) --> Access: 2015-08-22 08:11:08.364959865 +0800 --> Modify: 2015-08-22 08:11:05.354951390 +0800 --> Change: 2015-08-22 08:11:05.354951390 +0800 $ stat -L echo --> File: `echo` --> Size: 28176 Blocks: 56 IO Block: 4096 regular file --> Device: fd00h/64768dInode: 393280 Links: 1 --> Access: (0755/-rwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root) --> Access: 2015-08-21 05:41:48.000000000 +0800 --> Modify: 2014-10-15 12:51:07.000000000 +0800 --> Change: 2015-08-21 05:41:48.910998268 +0800 ## -Z, --context 打印selinux安全上下文 不常用 $ ## -f, --file-system 显示文件所在的文件系统的状态 $ stat --file-system echo File: "echo" ID: 967e9fcacf39b33a Namelen: 255 Type: ext2/ext3 Block size: 4096 Fundamental block size: 4096 Blocks: Total: 12371645 Free: 11518437 Available: 10888319 Inodes: Total: 3153920 Free: 3055295 ## -c --format=FORMAT 自定义输出格式,结尾有换行 $ ## --printf=FORMAT 自定义输出格式,结尾无换行符,需手动添加 $ ## -t, --terse 以简洁的形式打印输出信息(在没有改变输出格式的情况下) $ stat -t echo --> echo 9 0 a1ff 0 0 fd00 266232 1 0 0 1440202268 1440202265 1440202265 4096 @@ FORMAT ## %a 八进制格式的文件访问权限 $ stat -c '%a' echo --> 777 ## %A 可读形式访问权限 $ stat -c '%A' echo --> lrwxrwxrwx ## ... $
## echo
echo是一个内建命令,将参数显示到标准输出
## SYNOPSIS echo: echo [-neE] [arg ...] @@Options: ## -n 输出文字后不换行 $ echo -n 'this is my new life.' --> this is my new life.(此处没有换行)[root@lcyan tmp]# ## -e 允许对转义字符的解析 $ echo -e '\t this my \n new life.' --> this my --> new life. ## -E 显式地抑制反斜杠转义的解释 $ echo -e '\t this my \n new life.' --> \t this my \n new life. @@ backslash-escaped characters \a 发出警告声; \b 删除前一个字符; \c 最后不加上换行符号; \f 换行但光标仍旧停留在原来的位置; \n 换行且光标移至行首; \r 光标移至行首,但不换行; \t 插入tab; \v 与\f相同; \\ 插入 \ 字符; \nnn 插入nnn(八进制)所代表的ASCII字符;
## shutdown
shutdown是一个管理员命令,该命令可以安全关闭或者重新启动系统。在最后五分钟时间内,新的登录被阻止。
## SYNOPSIS shutdown [OPTION]... TIME [MESSAGE] @@ Options ## -r 关闭系统然后重新启动,类似于Windows平台restart $ shutdown -r ## -h 关闭电源 $ shutdown -h ## -c 中断关机:当执行"shutdown -h 12:00"指令时,只要按+键就可以中断关机的指令 $ shutdown -c --> shutdown: Shutdown cancelled --> [1]+ Done shutdown -h 15:33 ## -k 只有发出警告信息,并禁止登录,实际上不关闭系统。 $ shutdown -k "14:22" 'I will be closed.'
## halt
halt是一个管理员命令,其实halt就是调用shutdown -h。halt执行时﹐杀死应用进程﹐执行sync系统调用﹐文件系统写操作完成后就会停止内核
## SYNOPSIS reboot [OPTION]... halt [OPTION]... poweroff [OPTION]... @@OPTIONS ## -f, --force 没有调用shutdown而强制关机或重启。 $ ## -p, --poweroff 该选项为缺省选项。就是关机时调用poweroff。 $ ## -w, --wtmp-only 并不是真正的重启或关机﹐只是写wtmp〔/var/log/wtmp〕纪录。 $ ## --verbose 重新启动系统时输出稍微更详细的消息,对于调试问题停机是有用的。 $
## reboot
reboot,重启系统,参数参见halt
## poweroff
poweroff,重启系统,参数参见halt
## who
who,显示目前登入系统的用户信息。
## SYNOPSIS who [OPTION]... [ FILE | ARG1 ARG2 ] ## -a, --all same as -b -d --login -p -r -t -T -u $ who a --> system boot 2015-08-22 08:57 --> run-level 5 2015-08-22 08:57 --> LOGIN tty3 2015-08-22 08:58 2160 id=3 --> LOGIN tty2 2015-08-22 08:58 2158 id=2 --> LOGIN tty4 2015-08-22 08:58 2166 id=4 --> LOGIN tty5 2015-08-22 08:58 2168 id=5 --> LOGIN tty6 2015-08-22 08:58 2170 id=6 --> root + pts/0 2015-08-22 08:59 00:05 2363 (192.168.1.104) --> root + pts/1 2015-08-22 08:59 . 2403 (192.168.1.104) --> pts/2 2015-08-22 12:51 6135 id=ts/2 term=0 exit=0 --> pts/3 2015-08-22 12:51 6175 id=ts/3 term=0 exit=0 ## -b, --boot 上次系统启动时间 $ who -b --> system boot 2015-08-08 22:06 ## -d --deal 打印死亡进程 $ who -d --> pts/1 2015-08-21 12:57 3545 id=ts/1 term=0 exit=0 ## -H, --heading 打印列标题 $ who -H --> NAME LINE TIME COMMENT --> root pts/0 2015-08-22 08:59 (192.168.1.104) --> root pts/1 2015-08-22 08:59 (192.168.1.104) --> root pts/2 2015-08-22 13:19 (192.168.1.104) ## -l --login 打印系统登陆进程 $ who -lH --> NAME LINE TIME IDLE PID COMMENT --> LOGIN tty3 2015-08-22 08:58 2160 id=3 --> LOGIN tty2 2015-08-22 08:58 2158 id=2 --> LOGIN tty4 2015-08-22 08:58 2166 id=4 --> LOGIN tty5 2015-08-22 08:58 2168 id=5 --> LOGIN tty6 2015-08-22 08:58 2170 id=6 ## --lookup 试图通过规范化的DNS主机名 $ who --lookup --> root pts/0 2015-08-22 07:53 (114.241.25.195) ## -m 只与标准输入相关的主机名和用户 $ --> root pts/0 2015-08-22 07:53 (114.241.25.195) ## -p, --process 打印由init启动,活动进程 $ who -p ## -q, --count 统计登陆的个数 $ who -q --> root root root --> # users=3 ## -r, --runlevel 打印当前的运行级别 $ who -r --> run-level 3 2015-08-08 22:06 ## -s, --short 打印简短的格式(默认的选项) $ who -s --> root pts/0 2015-08-22 07:53 (114.241.25.195) ##-t, --time 打印最后一次时间的变化 $ who -t ## -T, -w, --mesg $ ## -u, --users ## --message ## --writable
## w
w,显示目前谁登陆到系统以及它们在做什么。
w命令的显示项目按以下顺序排列:当前时间,系统启动到现在的时间,登录用户的数目,系统在最 近1秒、5秒和15分钟的平均负载。然后是每个用户的各项数据,项目显示顺序如下:登录帐号、终端名称、远 程主机名、登录时间、空闲时间、JCPU、PCPU、当前正在运行进程的命令行。
## SYNOPSIS w - [husfiV] [user] ## -h 不显示标题 $ w -h --> root pts/0 114.241.25.195 13:42 0.00s 0.18s 0.00s w -h ## -u 当列出当前进程和CPU时间时忽略用户名。这主要是用于执行su命令后的情况 $ w -u --> 13:46:00 up 52 days, 49 min, 1 user, load average: 0.00, 0.00, 0.00 --> USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT --> root pts/0 114.241.25.195 13:42 0.00s 0.19s 0.00s w -u ## -f 切换显示FROM项,也就是远程主机名项。默认值是不显示远程主机名, ## 当然系统管理员可以对源文件 ##作一些修改使得显示该项成为默认值。 $ w -f --> 13:47:53 up 52 days, 51 min, 1 user, load average: 0.00, 0.00, 0.00 --> USER TTY LOGIN@ IDLE JCPU PCPU WHAT --> root pts/0 13:42 0.00s 0.21s 0.00s w -f ## -i显示IP地址代替主机名(如果可能) $ w -i --> 13:51:27 up 4:53, 3 users, load average: 0.02, 0.01, 0.00 --> USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT --> root pts/0 192.168.1.104 08:59 13:07 0.65s 0.00s man w --> root pts/1 192.168.1.104 08:59 0.00s 1.67s 0.00s w -i --> root pts/2 192.168.1.104 13:19 15:08 0.14s 0.14s -bash
## whoami
whoami,打印与当前的有效用户ID相关联的用户名。
## SYNOPSIS $ whoami --> root
转载于:https://blog.51cto.com/molloc/1687226