METAPHORS' BLOG
Metaphors
Sep 15, 2017
It takes 5 minutes to read this article.

Linux常用命令(二)

本文为原创文章,转载请标明出处

目录

  1. 日期时间命令
    • 查看日期时间 date
    • 查看日历 cal
    • 修改日期时间 date clock
  2. 联线用户命令
    • 查看联线用户 who finger w
    • 与联线用户通信 wall write mesg
    • 断开联线用户 fuser
  3. 切换用户命令
    • 临时切换用户 su
    • 以root用户身份运行 sudo
  4. 定位和查找
    • 搜索 which
    • 文件搜索 locate
    • 特殊文件搜索 whereis
    • 关键字搜索 apropos
  5. 输入/输出相关命令
    • 回显 echo
    • 接收用户输入 read
    • 显示并保存文本 tee
    • 邮件 mail
    • 启动新shell exec

1. 日期时间命令

查看日期时间 date

查看当前系统时间
# date

格式化输出当前系统时间,如:
# date +"%F %T"

另外还有许多格式化选项,详见 # date --help

查看日历 cal

查看当前月份日历
# cal

查看指定月份日历
# cal 6 1996

修改日期时间 date clock

2. 联线用户命令

查看联线用户 who finger w

查看联线到系统中的用户
# who

查看联线到系统的用户及详细个人信息信息
# finger

查看用户占用系统资源的情况
# w

与联线用户通信 wall write mesg

向系统中的所有用户发送公告
# wall [message]

向登录到系统中的一个用户发送消息
# write [user]

拒绝接收消息
# mesg n
重新接收消息
# mesg y

断开联线用户 fuser

如:

# fuser -k /dev/pts/3

3. 切换用户命令

临时切换用户 su

如:

# su root

以root用户身份运行 sudo

4. 定位和查找

搜索 which

从当前的环境变量PATH保存的目录中查找参数指定的命令位置并以绝对路径输出

文件搜索 locate

依赖于一个事先建立的索引数据库 /var/lib/mlocate/mlocate.db ,这个索引数据库默认每天会自动更新一次,可能无法搜索到最近新增的文档

# locate [filename]

手动更新索引数据库
# updatedb

不区分大小写
# locate -i [filename]

特殊文件搜索 whereis

更擅长搜索二进制文件、说明文件、源代码等,搜索方式同 locate

关键字搜索 apropos

# apropos network

# man -k network

5. 输入/输出相关命令

回显 echo

# echo "something\n"

禁用转义字符(默认)
# echo -E "something\n"

启用转义字符
# echo -e "something\n"

输出结束后不换行
# echo -n "please enter your name: "

接收用户输入 read

参数:

a:将输入的文本存入数组中,默认分隔符为空格或制表符
d:指定结束符,默认结束符为换行符
e:从标准输入读取,使用readline库获取输入,此时用户可以使用退格键、方向键进行行编辑操作
n:指定读取的字符数
p:指定字符串输出到标准错误并读取输入
r:将读取到的字符串按字段放到不同的变量中
s:先锁住屏幕,再从标准输入中读取字符
t:在指定时间内没有输入就结束读取状态
u:从指定的文件描述符中读取

显示并保存文本 tee

如:

# ifconfig eth2 | tee eth2_info

参数:

a:以追加的形式将数据写到文件尾
i:写入数据时不写入标准错误

邮件 mail

发送邮件
# mail [option] [-s subject] [-c c_address] [-b b_address] [user] [-a file]

-s:设置邮件主题信息
-c:使用一个秘密抄送列表
-b:使用一个抄送列表

查看邮件
# mail

参数:
h:查看邮件标题
d:加序号可删除指定邮件
f:查看当前光标指向的邮件
n:跳转到指定序号的邮件
q:退出并将已经阅读的邮件存入 `~/mbox` 中
x:退出
!:允许使用shell命令

启动新shell exec

启动一个新shell并在新shell中执行指定的命令
# exec [command]

如有不当之处,请予指正,谢谢~


>