# 一.100个高频面试Linux命令

# 1. ls - 列出目录内容

ls -la  # 列出所有文件(包括隐藏文件)的详细信息
1

# 2. cd - 切换目录

cd /var/log  # 切换到/var/log目录
1

# 3. pwd - 显示当前工作目录

pwd  # 显示当前所在目录的完整路径
1

# 4. cat - 查看文件内容

cat config.yml  # 查看配置文件内容
1

# 5. grep - 文本搜索

grep -n "error" app.log  # 在日志中搜索"error"并显示行号
1

# 6. tail - 查看文件尾部

tail -f application.log  # 实时监控日志文件变化
1

# 7. head - 查看文件头部

head -20 app.log  # 查看日志前20行
1

# 8. cp - 复制文件或目录

cp -r source_dir/ dest_dir/  # 递归复制目录
1

# 9. mv - 移动或重命名文件

mv old_name.txt new_name.txt  # 重命名文件
1

# 10. rm - 删除文件或目录

rm -rf directory/  # 强制递归删除目录
1

# 11. mkdir - 创建目录

mkdir -p parent/child  # 创建多级目录
1

# 12. rmdir - 删除空目录

rmdir empty_dir  # 删除空目录
1

# 13. touch - 创建空文件或更新文件时间戳

touch new_file.txt  # 创建新文件
1

# 14. find - 查找文件

find /home -name "*.log"  # 查找所有.log文件
1

# 15. which - 查找命令路径

which python  # 查找python命令位置
1

# 16. whereis - 查找命令相关文件

whereis java  # 查找java相关文件
1

# 17. locate - 快速查找文件

locate nginx.conf  # 查找nginx配置文件
1

# 18. chmod - 修改文件权限

chmod +x script.sh  # 添加执行权限
1

# 19. chown - 修改文件所有者

chown user:group file.txt  # 修改文件所有者和组
1

# 20. ps - 查看进程状态

ps aux | grep nginx  # 查看nginx进程
1

# 21. top - 实时显示进程状态

top  # 查看系统进程和资源使用情况
1

# 22. kill - 终止进程

kill -9 1234  # 强制终止PID为1234的进程
1

# 23. killall - 终止同名进程

killall chrome  # 终止所有chrome进程
1

# 24. pkill - 按模式终止进程

pkill -f "python script"  # 终止匹配模式的进程
1

# 25. bg - 将进程放到后台运行

bg %1  # 将作业1放到后台运行
1

# 26. fg - 将进程放到前台运行

fg %1  # 将作业1放到前台运行
1

# 27. jobs - 查看后台作业

jobs  # 查看当前终端后台作业
1

# 28. nohup - 使进程在退出终端后继续运行

nohup python server.py &  # 后台运行并不受终端退出影响
1

# 29. df - 显示磁盘空间使用情况

df -h  # 以易读格式显示磁盘空间
1

# 30. du - 显示目录空间使用情况

du -sh /var/log  # 显示/var/log目录总大小
1

# 31. free - 显示内存使用情况

free -h  # 以易读格式显示内存使用
1

# 32. uname - 显示系统信息

uname -a  # 显示所有系统信息
1

# 33. uptime - 显示系统运行时间

uptime  # 显示系统运行时间和负载
1

# 34. who - 显示当前登录用户

who  # 显示当前登录用户信息
1

# 35. w - 显示登录用户及活动

w  # 显示登录用户及其活动
1

# 36. last - 显示登录历史

last  # 显示用户登录历史
1

# 37. history - 显示命令历史

history  # 显示命令历史记录
1

# 38. tar - 打包压缩文件

tar -czvf archive.tar.gz directory/  # 创建gzip压缩包
1

# 39. gzip - 压缩文件

gzip file.txt  # 压缩文件
1

# 40. gunzip - 解压缩文件

gunzip file.txt.gz  # 解压缩文件
1

# 41. zip - 创建zip压缩包

zip archive.zip file1.txt file2.txt  # 创建zip压缩包
1

# 42. unzip - 解压zip文件

unzip archive.zip  # 解压zip文件
1

# 43. ssh - 远程登录

ssh user@hostname  # 远程登录到主机
1

# 44. scp - 安全复制文件

scp file.txt user@hostname:/path/  # 复制文件到远程主机
1

# 45. rsync - 远程同步文件

rsync -av source/ user@hostname:destination/  # 同步文件到远程主机
1

# 46. ping - 测试网络连接

ping example.com  # 测试与example.com的网络连接
1

# 47. traceroute - 显示数据包路径

traceroute example.com  # 显示到example.com的网络路径
1

# 48. netstat - 显示网络状态

netstat -tuln  # 显示所有监听端口
1

# 49. ss - 显示套接字统计

ss -tuln  # 显示监听端口(比netstat更快)
1

# 50. ifconfig - 配置网络接口

ifconfig eth0  # 显示eth0接口信息
1

# 51. ip - 显示/操作路由、设备等

ip addr show  # 显示所有网络接口信息
1

# 52. route - 显示/操作IP路由表

route -n  # 显示路由表
1

# 53. hostname - 显示或设置主机名

hostname  # 显示当前主机名
1

# 54. curl - 传输数据

curl -I http://example.com  # 获取HTTP头信息
1

# 55. wget - 下载文件

wget http://example.com/file.zip  # 下载文件
1

# 56. lynx - 文本浏览器

lynx http://example.com  # 以文本方式浏览网页
1

# 57. telnet - 远程登录

telnet hostname 22  # 测试端口连通性
1

# 58. nc - 网络工具

nc -zv hostname 80  # 测试端口连通性
1

# 59. ssh-keygen - 生成SSH密钥

ssh-keygen -t rsa  # 生成RSA密钥对
1

# 60. ssh-copy-id - 复制SSH密钥到远程主机

ssh-copy-id user@hostname  # 复制公钥到远程主机
1

# 61. sed - 流编辑器

sed 's/old/new/g' file.txt  # 替换文件中的文本
1

# 62. awk - 文本处理工具

awk '{print $1}' file.txt  # 打印每行第一个字段
1

# 63. cut - 剪切文件内容

cut -d: -f1 /etc/passwd  # 提取/etc/passwd中的用户名
1

# 64. paste - 合并文件行

paste file1.txt file2.txt  # 合并两个文件的行
1

# 65. sort - 排序文件内容

sort file.txt  # 对文件内容排序
1

# 66. uniq - 报告或忽略重复行

uniq file.txt  # 去除重复行
1

# 67. wc - 统计文件内容

wc -l file.txt  # 统计文件行数
1

# 68. diff - 比较文件差异

diff file1.txt file2.txt  # 比较两个文件差异
1

# 69. patch - 应用补丁文件

patch -p1 < patchfile  # 应用补丁
1

# 70. ln - 创建链接

ln -s /path/to/file linkname  # 创建软链接
1
readlink /usr/bin/python  # 显示符号链接指向的实际路径
1

# 72. stat - 显示文件状态

stat file.txt  # 显示文件详细信息
1

# 73. file - 确定文件类型

file document.pdf  # 确定文件类型
1

# 74. md5sum - 计算MD5校验和

md5sum file.iso  # 计算文件MD5值
1

# 75. sha256sum - 计算SHA256校验和

sha256sum file.iso  # 计算文件SHA256值
1

# 76. date - 显示或设置系统日期时间

date +"%Y-%m-%d %H:%M:%S"  # 显示格式化日期时间
1

# 77. cal - 显示日历

cal  # 显示当月日历
1

# 78. time - 测量命令执行时间

time ls -la  # 测量命令执行时间
1

# 79. timeout - 运行有时间限制的命令

timeout 5s ping example.com  # 5秒后终止ping命令
1

# 80. watch - 定期执行命令

watch -n 1 'date'  # 每秒执行一次date命令
1

# 81. at - 定时执行任务

echo "ls -la" | at midnight  # 午夜执行命令
1

# 82. crontab - 管理定时任务

crontab -l  # 列出当前用户的定时任务
1

# 83. systemctl - 控制系统服务

systemctl status nginx  # 查看nginx服务状态
1

# 84. service - 运行系统服务脚本

service nginx restart  # 重启nginx服务
1

# 85. journalctl - 查询系统日志

journalctl -u nginx  # 查看nginx服务日志
1

# 86. dmesg - 显示内核消息

dmesg | grep error  # 查找内核错误消息
1

# 87. lsof - 列出打开文件

lsof -i :80  # 查找使用80端口的进程
1

# 88. strace - 跟踪系统调用

strace -f python script.py  # 跟踪Python脚本的系统调用
1

# 89. vmstat - 显示虚拟内存统计

vmstat 1  # 每秒显示一次虚拟内存统计
1

# 90. iostat - 显示CPU和I/O统计

iostat -x 1  # 每秒显示一次扩展I/O统计
1

# 91. mpstat - 显示CPU统计

mpstat 1  # 每秒显示一次CPU统计
1

# 92. pidstat - 显示进程统计

pidstat -u 1  # 每秒显示一次进程CPU使用情况
1

# 93. sar - 系统活动报告

sar -u 1 3  # 每秒显示一次CPU使用,共3次
1

# 94. ulimit - 控制shell资源

ulimit -a  # 显示所有资源限制
1

# 95. env - 显示环境变量

env  # 显示所有环境变量
1

# 96. export - 设置环境变量

export PATH=$PATH:/new/path  # 添加新路径到PATH
1

# 97. unset - 删除变量或函数

unset VARIABLE  # 删除环境变量
1

# 98. alias - 创建命令别名

alias ll='ls -alF'  # 创建ll别名
1

# 99. unalias - 删除别名

unalias ll  # 删除ll别名
1

# 100. source - 执行脚本文件

source ~/.bashrc  # 重新加载bash配置
1