Linux Shell 命令
AI 汇总,便于速查。
一、文件与目录操作
ls
-l
(详细列表), -a
(显示隐藏文件), -h
(易读大小), -t
(按时间排序)ls -lah /home
cd
~
(用户主目录), -
(返回上一个目录)cd ~/Documents
mkdir
-p
(递归创建), -v
(显示详情)mkdir -pv dir1/dir2
cp
-r
(递归复制), -i
(交互确认), -u
(仅更新)cp -ri src/ dest/
mv
-i
(交互确认), -v
(显示详情)mv old.txt new.txt
rm
-r
(递归删除), -f
(强制删除), -i
(交互确认)rm -rf tmp/
find
-name
(按名称), -type
(按类型), -exec
(执行命令)find /var -name \"*.log\" -exec rm {} \\;
chmod
u+x
(用户添加执行), 755
(数字权限)chmod u+x script.sh
chown
user:group
, -R
(递归)chown -R user:group dir/
二、文本处理
grep
-i
(忽略大小写), -r
(递归搜索), -v
(反向匹配), -E
(正则)grep -ri \"error\" /var/log
sed
s/old/new/
(替换), -i
(原地修改), -n
(抑制输出)sed -i \'s/foo/bar/g\' file.txt
awk
-F
(指定分隔符), {print $1}
(打印列)awk -F: \'{print $1}\' /etc/passwd
sort
-n
(数值排序), -r
(降序), -u
(去重)sort -nr data.txt
uniq
-c
(计数), -d
(仅重复行)sort file.txt | uniq -c
cut
-d:
(分隔符), -f1,3
(选择列)cut -d: -f1,3 /etc/passwd
tr
\'a-z\' \'A-Z\'
(大小写转换), -d
(删除字符)tr \'a-z\' \'A-Z\' < input.txt
wc
-l
(行数), -w
(单词数), -c
(字节数)wc -l access.log
三、系统信息与管理
top
-d 5
(刷新间隔), -u user
(用户过滤)top -d 5
ps
aux
(BSD格式), -ef
(标准格式), --forest
(树状)ps aux | grep nginx
df
-h
(易读), -T
(文件系统类型)df -hT /
du
-sh
(汇总大小), --max-depth=1
(目录深度)du -sh *
free
-h
(易读), -s 5
(持续刷新)free -h
uname
-a
(全部信息), -r
(内核版本)uname -a
lsof
-i:80
(端口), -u user
(用户)lsof -i:22
journalctl
-u nginx
(服务日志), --since today
(时间范围)journalctl -u nginx
四、网络操作
ping
-c 4
(次数), -i 2
(间隔)ping -c 4 google.com
traceroute
-n
(不解析域名), -m 30
(最大跳数)traceroute -n 8.8.8.8
netstat
-tunlp
(TCP/UDP监听端口)netstat -tunlp
ss
-t
(TCP), -u
(UDP), -l
(监听)ss -tuln
curl
-I
(仅头信息), -o file
(输出), -x proxy:port
(代理)curl -I https://example.com
wget
-c
(断点续传), -O filename
(重命名)wget -c https://example.com/file.zip
ssh
-p 2222
(端口), -i key.pem
(密钥)ssh user@host -p 2222
scp
-r
(递归), -P 2222
(端口)scp -P 2222 file.txt user@host:/path
五、压缩与归档
tar
tar -cvf archive.tar dir/
tar -xvf archive.tar
tar -czvf archive.tar.gz dir/
tar -xzvf archive.tar.gz
tar -cjvf archive.tar.bz2 dir/
tar -xjvf archive.tar.bz2
zip
zip -r archive.zip dir/
unzip archive.zip
gzip
gzip file
gunzip file.gz
7z
7z a archive.7z dir/
7z x archive.7z
六、权限与用户
sudo
-u user
(指定用户)sudo -u www-data whoami
su
-
(完整环境), -c \"cmd\"
(执行命令)su - user -c \"ls ~\"
passwd
-S
(状态信息)passwd username
useradd
-m
(创建家目录), -G group
(附加组)useradd -m -G sudo newuser
usermod
-aG group
(追加组), -L
(锁定账户)usermod -aG docker user
groupadd
-g 1005
(指定GID)groupadd -g 1005 devs
七、计划任务
crontab
-e
(编辑), -l
(列表), -r
(删除)crontab -e
at
-f file
(执行文件), -m
(邮件通知)echo \"cmd\" | at 23:00
systemctl
start/stop/restart
, enable/disable
systemctl restart nginx
八、性能监控
vmstat
2 5
(间隔2秒执行5次)vmstat 1 10
iostat
-dx 2
(设备详情+2秒刷新)iostat -dx 2
sar
-u
(CPU), -r
(内存), -b
(I/O)sar -u 1 3
dstat
-c
(CPU), -d
(磁盘), -n
(网络)dstat -cdn
九、环境与变量
export
-p
(列出所有)export PATH=$PATH:/new/bin
env
-i
(清空环境)env | grep PATH
source
source ~/.bashrc
alias
alias ll=\'ls -alF\'
十、实用工具
watch
-n 2
(2秒间隔), -d
(高亮变化)watch -n 1 \'date\'
tee
-a
(追加)ls | tee files.txt
xargs
-I{}
(占位符), -P 4
(并行)find . -name \"*.txt\" | xargs rm
time
time ls -R /
十一、Shell 内建命令
echo
echo -e \"Line1\\nLine2\"
printf
printf \"Name: %-10s Age: %d\\n\" \"Alice\" 25
test
[ -f file.txt ] && echo \"Exists\"
read
read -p \"Name: \" name
exec
exec /bin/bash
十二、快捷键与历史
Ctrl+R
Ctrl+A
Ctrl+E
Ctrl+U
!!
!$
history
history | grep ssh