发布于2026-06-06 阅读(0)
扫一扫,手机访问
这篇笔记属于那种“看一眼就忘不掉”的实用型干货,完全是日常运维中高频使用的命令合集。先从一个基础问题聊起:怎么确认当前在用什么Shell?echo $SHELL 这条命令就行了,问题不大。
想知道系统里都装了哪些Shell?直接 cat /etc/shells,一目了然。说到记忆,系统平时会把命令路径缓存起来,用 hash 查看,想清理就加个 -r 参数。多个命令同时执行,用分号 ; 隔开就行。
history 命令绝对是审计和排查问题的利器。几个常用的:-c 清空,-d 删除指定条目,后面加数字可以显示最近N条记录。如果想同步历史文件,-a 追加新命令,-n 读取未读的,-r 读文件附加到列表,-w 保存。还有两个不太常用但很有意思的参数:-p 展开历史参数成多行不保存,-s 则是追加单行。
熟记几个快捷键能大幅提升操作效率:Ctrl+l 清屏相当于 clear,Ctrl+c 终止当前命令。光标移动方面:Ctrl+a 跳到行首,Ctrl+e 跳到行尾,Ctrl+u 删除光标前所有内容,Ctrl+k 删除光标后所有内容。如果在单词级别移动,用 Esc+b 左移一个单词,Esc+f 右移。
本地帮助文档通常放在 /usr/share/doc/ 目录。如果安装完 CentOS 后 man 命令不可用,CentOS 6 用 makewhatis,CentOS 7 用 mandb 来制作数据库。
man 文档的翻页操作相当灵活:空格、^v、^f、^F 都是向下翻屏,b 或 ^b 向上。半屏操作用 d 或 ^d 向下,u 或 ^u 向上。逐行移动:^n、^e、^j 向下,^y、^p、^k 向上。直接输入数字可跳转到指定行,1g 回文件首,g 到尾。搜索功能:/keyword 从当前位置向后搜索,?keyword 向前搜索,n 和 N 分别表示下一个和上一个匹配项。
整个文件系统的布局是有讲究的:/boot 放内核文件和引导加载器;/bin 和 /sbin 存放启动即用的命令,不能挂在独立分区;/lib 和 /lib64 放共享库和内核模块。配置都在 /etc 里,普通用户在 /home 下,管理员在 /root。/media 和 /mnt 是挂载点,/dev 存放设备文件(b 表示块设备、c 表示字符设备)。第三方应用可以装到 /opt 或 /usr/local,/srv 放服务数据,/tmp 是临时存储。/usr 是只读共享数据,里面 bin、lib、include、share 各司其职。/var 存放可变数据:cache 缓存、lib 状态、lock 锁、log 日志、spool 数据池、tmp 临时文件。/proc 和 /sys 是虚拟文件系统,输出内核和硬件信息。/selinux 存放安全策略。
Linux 下文件类型有七种:普通文件(-)、目录(d)、块设备(b)、字符设备(c)、符号链接(l)、管道(p)、套接字(s)。ls 命令的常用选项:-a 显示隐藏文件,-l 长格式,-R 递归,-ld 显示目录和链接信息,-1 分行显示,-S 按大小排序,-u 配合 -t 按访问时间排序,-U 不排序按目录存放顺序。
用 stat 可以看到三个时间戳:atime(访问时间)、mtime(修改时间,改变文件内容)、ctime(改变时间,元数据变化)。touch 命令可以灵活操控这些时间:-a 只改 atime,-m 只改 mtime,-t 指定时间格式 [[cc]yy]mmddhhmm[.ss],-c 则如果文件不存在不创建。
cp 复制:-i 交互式,-r 递归,-a 相当于归档(-dR --preserv=all),-d 只复制链接名,-p 保留属性,-v 显示详情,-f 强制。mv 移动或改名:-i 交互,-f 强制。rm 删除:-i 交互,-f 强制,-r 递归。
tree 显示目录树:-d 只看目录,-L 指定层级,-P 按 pattern 过滤。mkdir 创建目录:-p 自动创建父目录,-v 显示详情,-m 直接指定权限。rmdir 删除空目录:-p 递归删除父空目录。rm -r 是真正的递归删除。
重定向的几种形式:> 覆盖标准输出,2> 覆盖错误输出,&> 全部覆盖。set -C 禁止覆盖(可用 >| 强制),set +C 允许覆盖。>> 追加,2>> 追加错误输出。特别要注意顺序:COMMAND > /path/to/file.out 2>&1 这个写法常用。还可以用括号合并多个命令的输出。tr 命令用于转换和删除字符:-c 补集,-d 删除,-s 压缩重复字符,-t 转换。可以用 < 从文件导入输入,比如 tr 'a-z' 'A-Z' 。
less 分页查看:ls -l /etc | less。mail 发送邮件:echo "testemail" | mail -s "test" user@example.com。lpr 发送打印:echo "testprint" | lpr -Pprinter_name。
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
4
5
6
7
8
9