Shell命令大全

O、Linux权限描述解读

Linux把文件的权限划分为读(r)、写(w)、执行(x)三种,每一个文件又有三组r、w、x权限,分别对应文件所属者rwx权限,文件所属者所在用户组的rwx权限,和除了文件所属者和文件所属者所在用户组的其他所有用户。

使用 ls –l命令可以查看文件或文件夹的权限。例如,一个文件的权限为 –rwxr-xr–,该如何理解呢?其实整个权限描述字符串一共10个字符。第一个字符代表类型,“-”表示文件,所以这里指的是一个文件的权限,接下来的3个字符“rwx”就代表了对于该文件的所属用户对这个文件有r(读),w(写),x(执行)的权限,再接下来的3个“r-x”,就代表对于该文件所属用户所在的用户组对该文件有r(读),x(执行)的权限,而没有w(写)的权限,没有对应的权限就在对应位用“-”代替。再接下来的3位“-w”,就代表除了该文件的所属用户及所属用户所在的用户组的其他所有用户对该文件有r(读)权限,没有w(写)和x(执行)的权限。用数字代表就是754.

下面来总结一下权限字符的规则:

l 一共10位,第一位表示类型,“-”表示文件,“d”表示文件夹

l 第2位到第4位,表示该文件或文件夹所属用户的它拥有的权限,顺序是rwx,如果哪个权限没有,在其位上用“-”代替。

l 第5到第7位,表示该文件或文件夹所属用户所在的用户组对它拥有的权限,顺序是rwx,如果哪个权限没有,在其位上用“-”代替。

l 第8到底10位,表示该文件或文件夹除了其所属用户和所属用户所在用户组的其他所哟用户对其拥有的权限,顺序是rwx,如果哪个权限没有,在其位上用“-”代替。

l 如果用数字表示,r=4 w=2 x=1 对于每一部分,总和最大为7.如果不好记,可以这样记,rwx,r位是2的2次方=4,w位是2的一次方=2,x位是2的0次方=1。

一、Linux下常用命令:文件与目录操作

命令name 命令作用
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下常用命令:备份与压缩

命令name 命令作用
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下常用命令:文本处理

命令name 命令作用
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指令

命令name 命令作用
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下常用命令:打印相关指令

命令name 命令作用
accept 接受打印请求
cancel 取消打印任务
disable 停止打印机
enable 启动打印机
lp 打印文件
lpadmin 配置cups打印机和类
lpc 控制打印机
lpq 显示当前打印队列
lpr 打印文件
lprm 删除当前打印队列中的作业
lpstat 显示CUPS的状态信息
pr 打印前转换文本格式
reject 拒绝打印请求

六、Linux下常用命令: 其他基础指令

命令name 命令作用
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下常用命令: 用户管理

命令name 命令作用
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下常用命令:进程管理

命令name 命令作用
init 进程初始化控制
killall 根据名称结束进程
nice 设置进程优先级
nohup 以忽略挂起信号方式运行程序
pgrep 基于名字查询并显示进程号
pidof 查找正在运行程序的进程号
pkill 向指定的进程发送信号
ps 显示系统当前的进程状态
pstree 用树形图显示进程的父子关系
renice 调整进程优先级
w 显示当前登录用户的相关信息
watch 全屏方式显示指定命令的输出信息

九、Linux下常用命令:磁盘与文件系统管理

命令name 命令作用
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下常用命令:内核与性能

命令name 命令作用
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系统

命令name 命令作用
startx 初始化X-Window会话
xauth X系统授权许可文件管理工具
xhost 显示和配置X服务器的访问权限
xinit X-Window系统初始化程序
xlsatoms 显示X服务器原子数据定义
xlsclients 显示指定显示器上运行的X程序
xlsfonts 显示X服务器使用的字体信息
xset 设置X系统的用户偏爱属性

十二、Linux下常用命令:系统安全

命令name 命令作用
chroot 以指定根目录运行指令
nmap 网络探测工具和安全扫描器
scp 加密的远程复制工具
sftp 安全文件传输工具
slogin 加密的远程登录工具
ssh 加密的远程登录工具
sudo 以另一个用户身份执行指令

十三、Linux下常用命令: 编程相关指令

命令name 命令作用
awk/gawk 模式扫描与处理语言
expr 计算表达式的值
gcc GNU的C语言编译器
gdb GNU调试器
ldd 显示共享库依赖
make 工程编译工具
nm 显示目标文件的符号表
perl perl语言的命令行工具
php PHP脚本语言命令行接口
test 条件测试

十四、Linux下常用命令:其他系统管理与维护指令

命令name 命令作用
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下常用命令:网络配置

命令name 命令作用
dnsdomainname 显示系统的DNS域名
domainname 显示和设置主机域名
hostname 显示或者设置系统主机名
ifcfg 配置网络接口
ifconfig 配置网络接口的网络参数
ifdown 关闭指定网络接口
ifup 启动指定网络接口
nisdomainname 显示和设置主机域名
route 显示与操纵本机的IP路由表
ypdomainname 显示和设置主机域名

十六、Linux下常用命令:网络测试与应用

命令name 命令作用
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下常用命令:高级网络指令

命令name 命令作用
arptables 管理内核的ARP规则表
ip 强大的多功能网络配置工具
iptables IP包过滤与NAT管理工具
iptables-save 保存内核中iptables的配置
iptables-restore 还原iptables的配置信息
tcpdump 监听网络流量

十八、Linux下常用命令: 网络服务器指令

命令name 命令作用
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守护进程

参考文章出处:

Shell命令大全 -疯狂之桥的博客

Linux权限描述解读

Table of Contents