linux常用shell命令

本文提供了一个全面的Linux命令指南,覆盖了关机重启、系统信息查看、磁盘管理、网络配置、进程管理、服务控制、文件操作等核心技能,是Linux初学者和专业用户的必备资源。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

推荐工具

推荐一个Linux在线命令大全(https://www.linuxcool.com/),提供了准确,丰富,稳定的 Linux 命令,每一条都介绍了详细的用法、常见参数、参考实例。并且是中文哦~

关机/重启/注销

shutdown -h now	#即刻关机
shutdown -h 10	#10分钟后关机
shutdown -h 11:00	#11:00关机
shutdown -h +10	#预定时间关机(10分钟后)
shutdown -c	#取消指定时间关机
shutdown -r now	#重启
shutdown -r 10	#10分钟之后重启
shutdown -r 11:00	#定时重启
reboot	#重启
init 6	#重启
init 0	#⽴刻关机
telinit 0	#关机
poweroff	#⽴刻关机
halt	#关机
sync	#buff数据同步到磁盘
logout	#退出登录Shell

系统信息和性能查看

uname -a	#查看内核/OS/CPU信息
uname -r	#查看内核版本
uname -m	#查看处理器架构
arch			#查看处理器架构
hostname	#查看计算机名
who			#显示当前登录系统的⽤户
who am i		#显示登录时的⽤户名
whoami		#显示当前⽤户名
cat /proc/version	#查看linux版本信息
cat /proc/cpuinfo	#查看CPU信息
cat /proc/interrupts	#查看中断
cat /proc/loadavg	#查看系统负载
uptime	#查看系统运⾏时间、⽤户数、负载
env	#查看系统的环境变量
lsusb -tv	#查看系统USB设备信息
lspci -tv	#查看系统PCI设备信息
lsmod	#查看已加载的系统模块
grep MemTotal /proc/meminfo	#查看内存总量
grep MemFree /proc/meminfo	#查看空闲内存量
free -m	#查看内存⽤量和交换区⽤量
date		#显示系统⽇期时间
cal 2021	#显示2021⽇历表
top	#动态显示cpu/内存/进程等情况
vmstat 1 20	#每1秒采⼀次系统状态,采20次
iostat	#查看io读写/cpu使⽤情况查看io读写/cpu使⽤情况	#查询cpu使⽤情况(1秒⼀次,共10次)
sar -d 1 10	#查询磁盘性能

磁盘和分区

fdisk -l	#查看所有磁盘分区
swapon -s	#查看所有交换分区
df -h	#查看磁盘使⽤情况及挂载点
df -hl	#同上
du -sh /dir	#查看指定某个⽬录的⼤⼩
du -sk * | sort -rn	#从⾼到低依次显示⽂件和⽬录⼤⼩
mount /dev/hda2 /mnt/hda2	#挂载hda2盘
mount -t ntfs /dev/sdc1 /mnt/usbhd1	#指定⽂件系统类型挂载(如ntfs)
mount -o loop xxx.iso /mnt/cdrom	#挂 载 iso ⽂ 件
umount -v /dev/sda1	#通过设备名卸载
umount -v /mnt/mymnt	#通过挂载点卸载
fuser -km /mnt/hda1	#强制卸载(慎⽤)

⽤户和⽤户组

useradd codesheep	#创建⽤户
userdel -r codesheep	#删除⽤户
usermod -g group_name user_name	#修改⽤户的组
usermod -aG group_name user_name	#将⽤户添加到组
usermod -s /bin/ksh -d /home/codepig –g dev codesheep	#修改⽤户codesheep的登录Shell、主⽬录以及⽤户组
groups test	#查看test⽤户所在的组
groupadd group_name	#创建⽤户组
groupdel group_name	#删除⽤户组
groupmod -n new_name old_name	#重命名⽤户组
su - user_name	#su - user_name
passwd	#修改⼝令
passwd codesheep	#修改某⽤户的⼝令
w	#查看活动⽤户
id codesheep	#查看指定⽤户codesheep信息
last	#查看⽤户登录⽇志
crontab -l	#查看当前⽤户的计划任务
cut -d: -f1 /etc/passwd	#查看系统所有⽤户
cut -d: -f1 /etc/group	#查看系统所有组

⽹络和进程管理

ifconfig	#查看⽹络接⼝属性
ifconfig eth0	#查看某⽹卡的配置
route -n	#查看路由表
netstat -lntp	#查看所有监听端⼝
netstat -antp	#查看已经建⽴的TCP连接
netstat -lutp	#查看TCP/UDP的状态信息
ifup eth0	#启⽤eth0⽹络设备
ifdown eth0	#禁⽤eth0⽹络设备
iptables -L	#查看iptables规则
ifconfig eth0 192.168.1.1 netmask 255.255.255.0	#配置ip地址
dhclient eth0	#以dhcp模式启⽤eth0
route add -net 0/0 gw Gateway_IP	#配置默认⽹关
route add -net 192.168.0.0 netmask 255.255.0.0 gw 192.168.1.1	#配置静态路由到达⽹络'192.168.0.0/16'
route del 0/0 gw Gateway_IP	#删除静态路由
hostname	#查看主机名
host www.baidu.com # 解析主机名
nslookup www.baidu.com #查询DNS记录,查看域名解析是否正常
ps -ef	#查看所有进程
ps -ef | grep codesheep	#过滤出你需要的进程
kill -s name	#kill指定名称的进程
kill -s pid	#kill指定pid的进程
top	#实时显示进程状态
vmstat 1 20	#每1秒采⼀次系统状态,采20次
iostat	#iostat
sar -u 1 10	#查询cpu使⽤情况(1秒⼀次,共10次)
sar -d 1 10	#查询磁盘性能

常⻅系统服务命令

chkconfig --list	#列出系统服务
service <服务名> status	#查看某个服务
service <服务名> start	#启动某个服务
service <服务名> stop	#终⽌某个服务
service <服务名> restart	#重启某个服务
systemctl status <服务名>	#查看某个服务
systemctl start <服务名>	#启动某个服务
systemctl stop <服务名>	#终⽌某个服务
systemctl restart <服务名>	#重启某个服务
systemctl enable <服务名>	#关闭⾃启动
systemctl disable <服务名>	#关闭⾃启动

⽂件和⽬录操作

cd <⽬录名>	#进⼊某个⽬录
cd ..	#回上级⽬录
cd ../..	#回上两级⽬录
cd	#进个⼈主⽬录
cd -	#回上⼀步所在⽬录
pwd	#显示当前路径
ls	#查看⽂件⽬录列表
ls -F	#查看⽬录中内容(显示是⽂件还是⽬录)
ls -l	#查看⽂件和⽬录的详情列表
ls -a	#查看隐藏⽂件
ls -lh	#查看⽂件和⽬录的详情列表(增强⽂件⼤⼩易读性)
ls -lSr	#查看⽂件和⽬录列表(以⽂件⼤⼩升序查看)
tree	#查看⽂件和⽬录的树形结构
mkdir <⽬录名>	#创建⽬录
mkdir dir1 dir2	#同时创建两个⽬录
mkdir -p /tmp/dir1/dir2	#创建⽬录树
rm -f file1	#删除'file1'⽂件
rmdir dir1	#删除'dir1'⽬录
rm -rf dir1	#删除'dir1'⽬录和其内容
rm -rf dir1 dir2	#同时删除两个⽬录及其内容
mv old_dir new_dir	#重命名/移动⽬录
cp file1 file2	#复制⽂件
cp dir/* .	#复制某⽬录下的所有⽂件⾄当前⽬录
cp -a dir1 dir2	#复制⽬录
cp -a /tmp/dir1 .	#复制⼀个⽬录⾄当前⽬录
ln -s file1 link1	#创建指向⽂件/⽬录的软链接
ln file1 lnk1	#创建指向⽂件/⽬录的物理链接
find / -name file1	#从跟⽬录开始搜索⽂件/⽬录
find / -user user1	#搜索⽤户user1的⽂件/⽬录
find /dir -name *.bin	#在⽬录/dir中搜带有.bin后缀的⽂件
locate <关键词>	#快速定位⽂件
locate *.mp4	#寻找.mp4结尾的⽂件
whereis <关键词>	#显示某⼆进制⽂件/可执⾏⽂件的路径
which <关键词>	#查找系统⽬录下某的⼆进制⽂件
chmod ugo+rwx dir1	#设置⽬录所有者(u)、群组(g)及其他⼈(o)的读(r)写(w)执⾏(x)权限
chmod go-rwx dir1	#移除群组(g)与其他⼈(o)对⽬录的读写执⾏权限
chown user1 file1	#改变⽂件的所有者属性
chown -R user1 dir1	#改变⽬录的所有者属性
chgrp group1 file1	#改变⽂件群组
chown user1:group1 file1	#改变⽂件的所有⼈和群组

⽂件查看和处理

cat file1	#查看⽂件内容
cat -n file1	#查看内容并标示⾏数
tac file1	#从最后⼀⾏开始反看⽂件内容
more file1	#more file1
less file1	#类似more命令,但允许反向操作
head -2 file1	#查看⽂件前两⾏
tail -2 file1	#查看⽂件后两⾏
tail -f /log/msg	#实时查看添加到⽂件中的内容
grep codesheep hello.txt	#在⽂件hello.txt中查找关键词codesheep
grep ^sheep hello.txt	#在⽂件hello.txt中查找以sheep开头的内容
grep [0-9] hello.txt	#选择hello.txt⽂件中所有包含数字的⾏
sed 's/s1/s2/g' hello.txt	#将hello.txt⽂件中的s1替换成s2
sed '/^$/d' hello.txt	#从hello.txt⽂件中删除所有空⽩⾏
sed '/ *#/d; /^$/d' hello.txt	#从hello.txt⽂件中删除所有注释和空⽩⾏
sed -e '1d' hello.txt	#从⽂件hello.txt 中排除第⼀⾏
sed -n '/s1/p' hello.txt	#查看只包含关键词"s1"的⾏
sed -e 's/ *$//' hello.txt	#删除每⼀⾏最后的空⽩字符
sed -e 's/s1//g' hello.txt	#从⽂档中只删除词汇s1并保留剩余全部
sed -n '1,5p;5q' hello.txt	#查看从第⼀⾏到第5⾏内容
sed -n '5p;5q' hello.txt	#查看第5⾏
paste file1 file2	#合并两个⽂件或两栏的内容
paste -d '+' file1 file2	#合并两个⽂件或两栏的内容,中间⽤"+"区分
sort file1 file2	#排序两个⽂件的内容
comm -1 file1 file2	#⽐较两个⽂件的内容(去除'file1'所含内容)
comm -2 file1 file2	#⽐较两个⽂件的内容(去除'file2'所含内容
comm -3 file1 file2	#⽐较两个⽂件的内容(去除两⽂件共有部分)

打包和解压

zip -r xxx.zip file1 file2 dir1	#将多个⽂件+⽬录压成zip包
unzip xxx.zip	#解压zip包
tar -cvf xxx.tar file	#创建⾮压缩tar包
tar -cvf xxx.tar file1 file2 dir1	#将多个⽂件+⽬录打tar包
tar -tf xxx.tar	#查看tar包的内容
tar -xvf xxx.tar	#解压tar包
tar -xvf xxx.tar -C /dir	#将tar包解压⾄指定⽬录
tar -cvfj xxx.tar.bz2 dir	#创建bz2压缩包
tar -jxvf xxx.tar.bz2	#解压bz2压缩包
tar -cvfz xxx.tar.gz dir	#创建gzip压缩包
tar -zxvf xxx.tar.gz	#解压gzip压缩包
bunzip2 xxx.bz2	#解压bz2压缩包
bzip2 filename	#压缩⽂件
gunzip xxx.gz	#解压gzip压缩包
gzip filename	#压缩⽂件
gzip -9 filename	#最⼤程度压缩

APT软件⼯具

apt-cache search pkg_name	#搜索程序包
apt-cache show pkg_name	#获取包的概览信息
apt-get install pkg_name	#安装/升级软件包
apt-get purge pkg_name	#卸载软件(包括配置)
apt-get remove pkg_name	#卸载软件(不包括配置)
apt-get update	#更新包索引信息
apt-get upgrade	#更新已安装软件包
apt-get clean	 #清理缓存

嵌入式开发常用

pwd      #显示当前工作目录的绝对路径
shutdown     #关机,等同于halt、poweroff
date     #显示日期时间
top     #实时显示进程动态
history     #显示历史命令
ps –a     #显示所有终端执行的程序
kill -9 619     #杀死进程号619,ps指令查看进程号
clear     #清楚屏幕
chown bin:bin test.txt     #将test.txt的用户和用户组改为bin
uname –a     #显示系统系统
df –h     #显示磁盘使用情况,h为易读显示
fdisk –l     #查看磁盘分区情况。
free –m     #以MB为单位,显示内存使用情况
find –name “at91*”       #查找at91开头的文件
grep -nR “hello” *      #文本搜索,当前目录下递归搜索并显示行号
tar –xzvf file.tar.gz     #解压file.tar.gz
tar –xvf file.tar       #解压file.tar
tar –cvf jpg.tar *.jpg       #将目录里所有jpg文件打包成tar.jpg
tar –czvf jpg.tar.gz *.jpg       #将目录里所有jpg文件压缩gzip生成jpg.tar.gz
ifconfig eth0 192.168.0.1 up     #设置eth0的IP,并启动。
ifconfig eth0 192.168.1.56 netmask 255.255.255.0 broadcast 192.168.1.255     #IP配置
mount /dev/cdrom /mnt      #挂载 /dev/cdrom 到 /mnt
mount –t nfs 192.168.1.180:/home/boyee/nfs /nfs     #挂载nfs文件系统
umount –v /dev/sda1     #卸载磁盘,通过设备名
umount –v /mnt/mymount/     #卸载磁盘,通过挂载点。
hexdump test.reg      #十六进制的形式打印,同od –x指令
ipcrm -m 18163     #删除共享内存ID18163,ID号通过指令ipcs查看

终端快捷键

Ctrl+c 结束正在运行的程序
Ctrl+d 结束输入或退出shell(需要再次进入shell,重新登陆)
Ctrl+l 清屏,【是字母L的小写】等同于Clear
Ctrl+s 暂停屏幕输出【锁住终端】
Ctrl+q 恢复屏幕输出【解锁终端】
Ctrl+r 查找历史命令【输入关键字,就能调出以前执行过的命令】

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值