150个常用命令
命令 | 功能说明 |
线上查询及帮助命令(2个) | |
man | 查看命令帮助,命令的词典,更复杂的还有info,但不常用。 |
help | 查看Linux内置命令的帮助,比如cd命令。 |
文件和目录操作命令(18个) | |
ls | 全拼list,功能是列出目录的内容及其内容属性信息。 |
cd | 全拼change directory,功能是从当前工作目录切换到指定的工作目录。 |
cp | 全拼copy,其功能为复制文件或目录。 |
find | 查找的意思,用于查找目录及目录下的文件。 |
mkdir | 全拼make directories,其功能是创建目录。 |
mv | 全拼move,其功能是移动或重命名文件。 |
pwd | 全拼print working directory,其功能是显示当前工作目录的绝对路径。 |
rename | 用于重命名文件。 |
rm | 全拼remove,其功能是删除一个或多个文件或目录。 |
rmdir | 全拼remove empty directories,功能是删除空目录。 |
touch | 创建新的空文件,改变已有文件的时间戳属性。 |
tree | 功能是以树形结构显示目录下的内容。 |
basename | 显示文件名或目录名。 |
dirname | 显示文件或目录路径。 |
chattr | 改变文件的扩展属性。 |
lsattr | 查看文件扩展属性。 |
file | 显示文件的类型。 |
md5sum | 计算和校验文件的MD5值。 |
查看文件及内容处理命令(21个) | |
cat | 全拼concatenate,功能是用于连接多个文件并且打印到屏幕输出或重定向到指定文件中。 |
tac | tac是cat的反向拼写,因此命令的功能为反向显示文件内容。 |
more | 分页显示文件内容。 |
less | 分页显示文件内容,more命令的相反用法。 |
head | 显示文件内容的头部。 |
tail | 显示文件内容的尾部。 |
cut | 将文件的每一行按指定分隔符分割并输出。 |
split | 分割文件为不同的小片段。 |
paste | 按行合并文件内容。 |
sort | 对文件的文本内容排序。 |
uniq | 去除重复行。oldboy |
wc | 统计文件的行数、单词数或字节数。 |
iconv | 转换文件的编码格式。 |
dos2unix | 将DOS格式文件转换成UNIX格式。 |
diff | 全拼difference,比较文件的差异,常用于文本文件。 |
vimdiff | 命令行可视化文件比较工具,常用于文本文件。 |
rev | 反向输出文件内容。 |
grep/egrep | 过滤字符串,三剑客老三。 |
join | 按两个文件的相同字段合并。 |
tr | 替换或删除字符。 |
vi/vim | 命令行文本编辑器。 |
文件压缩及解压缩命令(4个) | |
tar | 打包压缩。oldboy |
unzip | 解压文件。 |
gzip | gzip压缩工具。 |
zip | 压缩工具。 |
信息显示命令(11个) | |
uname | 显示操作系统相关信息的命令。 |
hostname | 显示或者设置当前系统的主机名。 |
dmesg | 显示开机信息,用于诊断系统故障。 |
uptime | 显示系统运行时间及负载。 |
stat | 显示文件或文件系统的状态。 |
du | 计算磁盘空间使用情况。 |
df | 报告文件系统磁盘空间的使用情况。 |
top | 实时显示系统资源使用情况。 |
free | 查看系统内存。 |
date | 显示与设置系统时间。 |
cal | 查看日历等时间信息。 |
搜索文件命令(4个) | |
which | 查找二进制命令,按环境变量PATH路径查找。 |
find | 从磁盘遍历查找文件或目录。 |
whereis | 查找二进制命令,按环境变量PATH路径查找。 |
locate | 从数据库 (/var/lib/mlocate/mlocate.db) 查找命令,使用updatedb更新库。 |
用户管理命令(10个) | |
useradd | 添加用户。 |
usermod | 修改系统已经存在的用户属性。 |
userdel | 删除用户。 |
groupadd | 添加用户组。 |
passwd | 修改用户密码。 |
chage | 修改用户密码有效期限。 |
id | 查看用户的uid,gid及归属的用户组。 |
su | 切换用户身份。 |
visudo | 编辑/etc/sudoers文件的专属命令。 |
sudo | 以另外一个用户身份(默认root用户)执行事先在sudoers文件允许的命令。 |
基础网络操作命令(11个) | |
telnet | 使用TELNET协议远程登录。 |
ssh | 使用SSH加密协议远程登录。 |
scp | 全拼secure copy,用于不同主机之间复制文件。 |
wget | 命令行下载文件。 |
ping | 测试主机之间网络的连通性。 |
route | 显示和设置linux系统的路由表。 |
ifconfig | 查看、配置、启用或禁用网络接口的命令。 |
ifup | 启动网卡。 |
ifdown | 关闭网卡。 |
netstat | 查看网络状态。 |
ss | 查看网络状态。 |
深入网络操作命令(9个) | |
nmap | 网络扫描命令。 |
lsof | 全名list open files,也就是列举系统中已经被打开的文件。 |
| 发送和接收邮件。 |
mutt | 邮件管理命令。 |
nslookup | 交互式查询互联网DNS服务器的命令。 |
dig | 查找DNS解析过程。 |
host | 查询DNS的命令。 |
traceroute | 追踪数据传输路由状况。 |
tcpdump | 命令行的抓包工具。 |
有关磁盘与文件系统的命令(16个) | |
mount | 挂载文件系统。 |
umount | 卸载文件系统。 |
fsck | 检查并修复Linux文件系统。 |
dd | 转换或复制文件。 |
dumpe2fs | 导出ext2/ext3/ext4文件系统信息。 |
dump | ext2/3/4文件系统备份工具。 |
fdisk | 磁盘分区命令,适用于2TB以下磁盘分区。 |
parted | 磁盘分区命令,没有磁盘大小限制,常用于2TB以下磁盘分区。 |
mkfs | 格式化创建Linux文件系统。 |
partprobe | 更新内核的硬盘分区表信息。 |
e2fsck | 检查ext2/ext3/ext4类型文件系统。 |
mkswap | 创建Linux交换分区。 |
swapon | 启用交换分区。 |
swapoff | 关闭交换分区。 |
sync | 将内存缓冲区内的数据写入磁盘。 |
resize2fs | 调整ext2/ext3/ext4文件系统大小。 |
系统权限及用户授权相关命令(4个) | |
chmod | 改变文件或目录权限。 |
chown | 改变文件或目录的属主和属组。 |
chgrp | 更改文件用户组。 |
umask | 显示或设置权限掩码。 |
查看系统用户登陆信息的命令(7个) | |
whoami | 显示当前有效的用户名称,相当于执行id -un命令。 |
who | 显示目前登录系统的用户信息。 |
w | 显示已经登陆系统的用户列表,并显示用户正在执行的指令。 |
last | 显示登入系统的用户。 |
lastlog | 显示系统中所有用户最近一次登录信息。 |
users | 显示当前登录系统的所有用户的用户列表。 |
finger | 查找并显示用户信息。 |
内置命令及其它(19个) | |
echo | 打印变量,或直接输出指定的字符串 |
printf | 将结果格式化输出到标准输出。 |
rpm | 管理rpm包的命令。 |
yum | 自动化简单化地管理rpm包的命令。 |
watch | 周期性的执行给定的命令,并将命令的输出以全屏方式显示。 |
alias | 设置系统别名。 |
unalias | 取消系统别名。 |
date | 查看或设置系统时间。 |
clear | 清除屏幕,简称清屏。 |
history | 查看命令执行的历史纪录。 |
eject | 弹出光驱。 |
time | 计算命令执行时间。 |
nc | 功能强大的网络工具。 |
xargs | 将标准输入转换成命令行参数。 |
exec | 调用并执行指令的命令。 |
export | 设置或者显示环境变量。 |
unset | 删除变量或函数。 |
type | 用于判断另外一个命令是否是内置命令。 |
bc | 命令行科学计算器 |
系统管理与性能监视命令(9个) | |
chkconfig | 管理Linux系统开机启动项。 |
vmstat | 虚拟内存统计。 |
mpstat | 显示各个可用CPU的状态统计。 |
iostat | 统计系统IO。 |
sar | 全面地获取系统的CPU、运行队列、磁盘 I/O、分页(交换区)、内存、 CPU中断和网络等性能数据。 |
ipcs | 用于报告Linux中进程间通信设施的状态,显示的信息包括消息列表、共享内存和信号量的信息。 |
ipcrm | 用来删除一个或更多的消息队列、信号量集或者共享内存标识。 |
strace | 用于诊断、调试Linux用户空间跟踪器。我们用它来监控用户空间进程和内核的交互,比如系统调用、信号传递、进程状态变更等。 |
ltrace | 命令会跟踪进程的库函数调用,它会显现出哪个库函数被调用。 |
关机/重启/注销和查看系统信息的命令(6个) | |
shutdown | 关机。 |
halt | 关机。 |
poweroff | 关闭电源。 |
logout | 退出当前登录的Shell。 |
exit | 退出当前登录的Shell。 |
Ctrl+d | 退出当前登录的Shell的快捷键。 |
进程管理相关命令(15个) | |
bg | 将一个在后台暂停的命令,变成继续执行 (在后台执行)。 |
fg | 将后台中的命令调至前台继续运行。 |
jobs | 查看当前有多少在后台运行的命令。 |
kill | 终止进程。 |
killall | 通过进程名终止进程。 |
pkill | 通过进程名终止进程。 |
crontab | 定时任务命令。 |
ps | 显示进程的快照。 |
pstree | 树形显示进程。 |
nice/renice | 调整程序运行的优先级。 |
nohup | 忽略挂起信号运行指定的命令。 |
pgrep | 查找匹配条件的进程。 |
runlevel | 查看系统当前运行级别。 |
init | 切换运行级别。 |
service | 启动、停止、重新启动和关闭系统服务,还可以显示所有系统服务的当前状态。 |
netstat -na | grep 7651
查看本机7651端口在和谁通信
ps aux | grep 7651
查看本机7651进程的相关信息
md5sum 文件名
用于查看文件的md5值,常用于检查文件是否一致
ps aux --sort -rss
显示各个进程对内存的使用情况,从大到小排序
netstat -ntpl
查看处于监听状态的TCP类型的端口
netstat -nupl
查看处于监听状态的UDP类型的端口
ps huH p 7651 | wc -l
查看进程7651所拥有的线程数
tcpdump -i any -vv -Xs 0 port 8080 -w temp.cap
TCP抓包命令,用于抓取传到该主机8080端口的http请求,存于文件temp.cap
抓下来的包可以用strings命令读取
netstat -nap | grep 7651
查看进程7651占用的端口
netstat -na | grep “2181” | wc -l
查看连接到本机2181端口上的连接数
lsof -i:2181
查看端口2181的运行情况
shell命令大全
一、Linux下常用命令:文件与目录操作
basename:从文件名中去掉路径和扩展名
cd:切换当前工作目录到指定目录
chgrp:改变文件所属组
chmod:改变文件的权限
chown:改变文件的所有者和组
cp:复制文件或目录
dd:复制文件并转换文件内容
file:确定文件类型
find:在指定目录下查找文件并执行指定的操作
ln:创建文件链接
locate/slocate:快速定位文件的路径
ls/dir/vdir:显示目录内容
mkdir:创建目录
mv:移动或重命名文件
pwd:显示当前工作目录
rename:重命名文件
rm:删除文件或目录
rmdir:删除空目录
touch:修改文件的时间属性
updatedb:创建或更新slocate数据库
whereis:显示指令程序、源代码和man手册页
which:显示指令的绝对路径
二、Linux下常用命令:备份与压缩
ar:创建、修改归档文件和从归档文件中提取文件
arj:.arj文件压缩指令
bunzip2:压缩bzip2格式的压缩文件
bzcat:解压缩文件到标准输出
bzip2:创建.bz2格式的压缩文件
bzip2recover:修复损坏的.bz2文件
bzless/bzmore:解压缩.bz2文件并分屏显示内容
compress:压缩数据文件
cpio:存取归档包中的文件
dump:文件系统备份
gunzip:解压缩由gzip压缩的文件
gzexe:压缩可执行程序
gzip:GNU的压缩和解压缩工具
lha:压缩和解压缩指令
resotre:还原由dump备份的文件或文件系统
tar:创建备份档案文件
unarj:解压缩.arj文件
uncompress:解压缩.Z文件
unzip:解压缩.zip文件
zcat:解压缩文件并送到标准输出
zforce:强制gzip格式的文件加上.gz扩展名
zip:压缩文件
zipinfo:显示zip压缩文件的详细信息
znew:将“.Z”文件转换成“.gz”文件
三、Linux下常用命令:文本处理
cat:链接文件并显示到标准输出
cksum:检查和计算文件循环冗余校验码
cmp:比较两个文件的差异
col:过滤控制字符
colrm:从输入中过滤掉指定的列
comm:比较两个有序文件的不同
csplit:分割文件
cut:显示文件中每行的指定内容
diff3:比较3个文件的不同
diff:比较并显示两个文件的不同
diffstat:根据diff指令的结果显示统计信息
ed:行文本编辑器
emacs:全屏文本编辑器
ex:文本编辑器
expand:将Tab转换为空白(Space)
fmt:最优化文本格式
fold:设置文件显示的行宽
grep/egrep/fgrep:显示文件中匹配的行
head:输出文件开头部分内容
ispell:交互式拼写检查程序
jed:文本编辑器
joe:编辑文本文件
join:合并两个文件的相同字段
less:分屏查看文本文件
look:显示文件中以特定字符串开头的行
more:分屏查看文本文件
od:以数字编码输出文件内容
paste:合并文件的内容
pico:文本编辑器
sed:流文件编辑器
sort:排序数据文件
spell:拼写检查
split:分割文件
sum:计算并显示文件的校验码
tac:反序显示文件内容
tail:输出文件尾部部分内容
tee:将输入内容复制到标准输出和指定文件
tr:转换或删除文件中的字符
unexpand:将空白(Space)转换为Tab
uniq:删除文件中的重复行
vi:全屏文本编辑器
wc:计算文件的字节数、单词数和行数
四、Linux下常用命令:shell指令
alias:定义命令别名
bg:将作业(或任务)放到后台运行
bind:显示或设置键盘配置
declare:声明shell变量
dirs:显示shell目录堆栈中的记录
echo:打印字符串到标准输出
enable:激活与关闭shell内部命令
eval:执行指定指令并返回结果
exec:执行给定指令后退出登录
exit:退出当前shell
export:设置与显示环境变量
fc:编辑并执行历史命令
fg:将后台任务(或作业)切换到前台运行
hash:显示与清除指令时运行查询的哈希表
history:显示与操纵历史命令
jobs:显示shell的作业信息
kill:杀死进程或作业
logout:退出登录shell
popd:从shell目录堆栈中删除记录
pushd:向shell目录堆栈中添加记录
set:设置shell的执行方式
shopt:设置控制shell行为变量的开关值
ulimit:设置shell的资源限制
umask:设置创建文件的权限掩码
unalias:取消由alias定义的命令别名
unset:删除定义的变量或函数
五、Linux下常用命令:打印相关指令
accept:接受打印请求
cancel:取消打印任务
disable:停止打印机
enable:启动打印机
lp:打印文件
lpadmin:配置cups打印机和类
lpc:控制打印机
lpq:显示当前打印队列
lpr:打印文件
lprm:删除当前打印队列中的作业
lpstat:显示CUPS的状态信息
pr:打印前转换文本格式
reject:拒绝打印请求
六、Linux下常用命令:其他基础指令
bc:实现精确计算的计算器
cal:显示日历
clear:清屏指令
consoletype:显示当前使用的终端类型
ctrlaltdel:设置热键Ctrl+Alt+Del的功能
date:显示和设置系统日期时间
dircolors:设置ls指令显示时的颜色
eject:弹出可移动设备的介质
halt:关闭计算机
hostid:显示当前主机的数字标识
hwclock:查询和设置系统硬件时钟
info:读取帮助文档
login:登录系统
man:显示联机帮助手册
md5sum:计算并显示文件的md5摘要信息
mesg:设置终端写权限
mtools:显示mtools软件包的指令
mtoolstest:测试并显示mtools工具包的配置
poweroff:关闭计算机并切断电源
reboot:重新启动计算机
shutdown:关闭计算机
sleep:睡眠指定长的时间
stat:显示文件或文件系统的状态
talk:与其他用户交谈
wall:向所有终端发送信息
whatis:在数据库中查询关键字
who:显示当前已登录用户的信息
whoami:显示当前用户名
write:向指定用户终端发送信息
yes:不断输出指定字符串
七、Linux下常用命令:用户管理
chfn:改变用户的finger信息
chsh:改变用户登录时的默认shell
finger:用户信息查询程序
gpasswd:管理组文件/etc/group
groupadd:创建组
groupdel:删除组
groupmod:修改组信息
groups:显示用户所属的组
grpck:验证组文件/etc/group的完整性
grpconv:启用组的影子口令文件
grpunconv:关闭组的影子口令文件
logname:显示登录用户名
passwd:设置用户密码
pwck:验证用户文件密码文件的完整性
pwconv:启用用户的影子口令文件
pwunconv:关闭用户的影子口令文件
su:切换用户
useradd:创建用户
userdel:删除用户
usermod:修改用户的配置信息
users:显示当前登录系统的用户名
八、Linux下常用命令:进程管理
init:进程初始化控制
killall:根据名称结束进程
nice:设置进程优先级
nohup:以忽略挂起信号方式运行程序
pgrep:基于名字查询并显示进程号
pidof:查找正在运行程序的进程号
pkill:向指定的进程发送信号
ps:显示系统当前的进程状态
pstree:用树形图显示进程的父子关系
renice:调整进程优先级
w:显示当前登录用户的相关信息
watch:全屏方式显示指定命令的输出信息
九、Linux下常用命令:磁盘与文件系统管理
badblocks:磁盘坏块检查工具
blockdev:从命令行调用块设备的ioctl函数
chattr:改变文件的第2扩展文件系统属性
convertquota:转换quota文件格式
df:报告磁盘剩余空间情况
dumpe2fs:显示ext2/ext3文件系统信息
e2fsck:检查ext2/ext3文件系统
e2image:保存ext2/ext3源数据到文件
e2label:设置ext2/ext3文件系统标签
edquota:编辑用户的磁盘空间配额
fdisk:Linux下的分区工具
findfs:查找文件系统
fsck:检查与修复Linux文件系统
grub:Linux下的引导加载器
hdparm:调整硬盘I/O性能
lilo:Linux加载器
lsattr:显示文件的ext2文件系统属性
mkbootdisk:为当前系统创建专门的引导软盘
mke2fs:创建第2扩展文件系统
mkfs:创建各种文件系统
mkinitrd:创建初始化ram磁盘映像文件
mkisofs:创建光盘映像文件
mknod:创建块设备或字符设备文件
mkswap:创建交换分区文件系统
mktemp:创建临时文件
mount:加载文件系统
parted:磁盘分区管理工具
quota:显示用户磁盘配额
quotacheck:创建、检查和修复配额文件
quotaoff:关闭文件系统的磁盘配额功能
quotaon:打开文件系统的磁盘配额功能
quotastat:显示磁盘配额状态
repquota:显示文件系统磁盘配额信息报表
swapoff:关闭交换空间
swapon:激活交换空间
sync:强制将缓存数据写入磁盘
tune2fs:调整ext2/ext3文件系统的参数
umount:卸载已经加载的文件系统
十、Linux下常用命令:内核与性能
depmod:处理内核可加载模块的依赖关系
dmesg:显示内核的输出信息
free:显示内存使用情况
insmod:加载模块到内核
iostat:报告CPU、I/O设备及分区状态
ipcs:显示进程间通信的状态信息
kernelversion:显示内核主版本号
lsmod:显示已加载的模块
modinfo:显示内核模块信息
modprobe:加载内核模块并解决依赖关系
mpstat:显示进程相关状态信息
rmmod:从内核中删除模块
sar:收集、显示和保存系统活动信息
slabtop:实时显示内核的slab缓存信息
sysctl:运行时修改内核参数
tload:监视系统平均负载情况
top:显示和管理系统进程
uname:显示系统信息
uptime:显示系统运行时间及平均负载
vmstat:显示虚拟内存的状态
十一、Linux下常用命令:X-Window系统
startx:初始化X-Window会话
xauth:X系统授权许可文件管理工具
xhost:显示和配置X服务器的访问权限
xinit:X-Window系统初始化程序
xlsatoms:显示X服务器原子数据定义
xlsclients:显示指定显示器上运行的X程序
xlsfonts:显示X服务器使用的字体信息
xset:设置X系统的用户偏爱属性
十二、Linux下常用命令:系统安全
chroot:以指定根目录运行指令
nmap:网络探测工具和安全扫描器
scp:加密的远程复制工具
sftp:安全文件传输工具
slogin:加密的远程登录工具
ssh:加密的远程登录工具
sudo:以另一个用户身份执行指令
十三、Linux下常用命令:编程相关指令
awk/gawk:模式扫描与处理语言
expr:计算表达式的值
gcc:GNU的C语言编译器
gdb:GNU调试器
ldd:显示共享库依赖
make:工程编译工具
nm:显示目标文件的符号表
perl:perl语言的命令行工具
php:PHP脚本语言命令行接口
test:条件测试
十四、Linux下常用命令:其他系统管理与维护指令
arch:显示当前主机的硬件架构
at:按照时间安排任务的执行
atq:查询待执行的任务
atrm:删除待执行的任务
batch:在指定时间运行任务
chkconfig:设置系统在不同运行等级下所执行的服务
crontab:按照时间设置计划任务
last:显示以前登录过系统的用户相关信息
lastb:显示登录系统失败的用户相关信息
logrotate:系统日志的轮循工具
logsave:将命令的输出信息保存到日志文件
logwatch:报告和分析系统日志
lsusb:显示所有的USB设备
patch:补丁与更新文件
rpm:Red Hat软件包管理器
runlevel:显示当前系统的运行等级
service:Linux服务管理和控制工具
telinit:切换当前系统的运行等级
yum:RPM软件包自动化管理工具
十五、Linux下常用命令:网络配置
dnsdomainname:显示系统的DNS域名
domainname:显示和设置主机域名
hostname:显示或者设置系统主机名
ifcfg:配置网络接口
ifconfig:配置网络接口的网络参数
ifdown:关闭指定网络接口
ifup:启动指定网络接口
nisdomainname:显示和设置主机域名
route:显示与操纵本机的IP路由表
ypdomainname:显示和设置主机域名
十六、Linux下常用命令:网络测试与应用
arp:管理本机arp缓冲区
arping:向相邻主机发送ARP请求报文
arpwatch:监听网络上的ARP信息
dig:域名查询工具
elinks:纯文本网页浏览器
elm:电子邮件客户端程序
ftp:文件传输协议客户端
host:DNS域名查询工具
ipcalc:IP地址计算器
lynx:纯文本网页浏览器
mail:电子邮件管理程序
ncftp:增强的FTP客户端工具
netstat:显示网络状态
nslookup:DNS域名查询工具
pine:电子邮件和新闻组处理程序
ping:测试到达目标主机的网络是否通畅
rsh:远程shell
telnet:远程登录工具
tftp:简单文件传输协议客户端
tracepath:追踪数据经过的路由
traceroute:追踪数据包到达目的主机经过的路由
wget:从指定URL地址下载文件
十七、Linux下常用命令:高级网络指令
arptables:管理内核的ARP规则表
ip:强大的多功能网络配置工具
iptables:IP包过滤与NAT管理工具
iptables-save:保存内核中iptables的配置
iptables-restore:还原iptables的配置信息
tcpdump:监听网络流量
十八、Linux下常用命令:网络服务器指令
ab:Web服务器性能测试
apachectl:Apache HTTP服务器控制接口
exportfs:管理NFS服务器共享的文件系统
htdigest:管理用于摘要认证的用户文件
htpasswd:管理用于基本认证的用户文件
httpd:Apache超文本传输协议服务器
mailq:显示待发送的邮件队列
mysql:MySQL服务器的客户端工具
mysqladmin:MySQL服务器管理工具
msqldump:MySQL服务器备份工具
mysqlimport:MySQL数据库导入工具
mysqlshow:显示MySQL数据库、表和字段信息
nfsstat:显示网络文件系统状态
sendmail:电子邮件传送代理程序
showmount:显示NFS服务器上的加载信息
smbclient:samba服务器客户端工具
smbmount:加载samba文件系统
smbpasswd:改变samba用户的密码
squid:HTTP代理服务器程序
sshd:OpenSSH守护进程