1.uname:显示系统信息,比如内核版本号,硬件框架等
-n:显示主机名
-r:显示内核发行版本号
2.hostname:显示或设置系统的主机名
-I:显示主机的所有IP地址,不依赖DNS解析,速度较快
例子:
hostname name:临时修改主机名为name,重启系统失效
CentOS7中修改/etc/hostnanme,在CentOS6中修改etc/sysconfig/network,使主机名永久生效
3.dmesg:系统启动异常诊断
4.stat:显示文件或文件系统状态(详细显示)
-c:使用指定输出格式替代默认值
例子:
stat /etc/hosts:打印hosts文件的属性信息
文件属性信息:
File:文件名
Size:文件大小
Blocks:占用block数量
IO Block:Block总大小
regular file:文件类型为普通文件
Device:设备编号的十六进制和十进制
Inode:文件的inode值
Links:文件的硬链接数
Access:文件权限
Uid、Gid:用户、用户组
Access:访问时间
Modify:修改时间
Change:状态改变时间
5.du:统计磁盘空间使用情况
-h:以人类可读的方式查看大小,以K、M、G为单位
-s:显示文件的总大小
-a:显示所有文件大小
6.date:显示与设置系统时间
OPTION:
-d 时间字符串:显示指定字符串所描述的时间,而非当前时间
-s 日期时间:设置系统时间
FORMAT:
%d 每月的第几天
%F 完整日期格式,等价于%Y-%m-%d(2019-08-18)
例子:
date +%F -d "-1day" 显示昨天
date +%F -d "yesterday" 显示昨天
date +%F -d "+2day" 显示2天后 (+代表未来,-代表过去,day表示日,year表示年,month表示月)
date -s 20170706 设置成20170706,具体时间为空,即00:00:00
7.echo:显示一行文本
-n:不要自动换行
-e:若字符串中出现特殊字符,会进行特殊处理:\a(发出警告声)、\b(删除前一个字符)、\c(最后不加上换行符号)、\f(换行但光标依然停留在原来的位置)、\n(换行且光标移至行首)、\r(光标移至行首,但不换行)、\t(插入tab)、\\(插入\字符)、\'(插入单引号)、\"(插入双引号)、\nnn(插入nnn(八进制)所代表的ASCII字符
例子:
echo Hello world!:直接输出文本Hello world!
echo 'Hello world!':等效上一句
echo "hello world" >> hello.txt:将hello world写入到hello.txt文件中
8.watch:监视命令执行情况
-n:命令执行的间隔时间,默认为2s
-d:高亮显示命令结果的变动之处
例子:
watch -n 1 'printf "stats recent_hot_info\r\n" | nc 10.73.12.151 11244':查看数据队列运行情况
watch -n 1 -d netstat -ant:查看netstat运行情况
9.which:显示命令的全路径
-a:默认在PATH路径中由前往后查找命令,如果查找到了,就停止匹配,使用-a选项将遍历所有PATH路径,输出所有匹配项
10.whereis:显示命令及其相关文件全路径
-b:查找可执行文件
-s:查找源代码文件
11.locate:快速定位文件路径。linux系统中有个名为mlocate.db的数据库文件,这个文件包含系统文件的文件名及对应的路径信息。locate命令查找文件时不用遍历磁盘,而是直接查找mlocate.db文件,快速给出结果,但会出现一个问题,如果新添加的文件,mlocate.db文件没有记录,需要updatedb命令更新一下,该updatedb会定期自动更新。(选项不是很重要)
-c:不显示匹配的内容,只显示匹配到的行数
-r:支持基本正则表达式匹配
-i:匹配时忽略大小写
-regex:支持扩展正则表达式
例子:
locate pwd:只要包含pwd字符串的都能找出来
12.updatedb:更新mlocate数据库