linux系统管理常用命令(精)
程序员文章站
2022-06-15 13:14:40
...
文件和目录管理
1.pwd
显示当前用户所在的工作目录
pwd -p /*显示链接到的真实路径*/
2.ls
列出目录及文件的属性信息
ls -a /*列出所有文件和子目录,包括隐藏文件和目录*/
ls -A /*列出所有文件和目录,但不包括隐藏文件和目录*/
ls -d /*知县是目录本深的属性信息*/
ls -l /*以长格式显示文件和目录的详细信息*/
ls -i /*先是文件的i节点编号*/
ls -h /*显示信息是更人性化容量的大小,如KB,MB,GB等*/
ls -R /*递归显示制定目录下的各级目录及文件*/
3.cat
用于显示指定文件的内容
cat -n /*显示文件内容是在每一行行首添加行号*/
cat -b /*显示文件内容是为非空白添加行号*/
4.tail
查看文件末尾指定行数的内容
tail -N /*N为用户指定的行数*/
tail -f /*跟踪文件中新增加的内容*/
5.head
查看文件开头指定行数的内容
head -N /*N为用户指定的行数*/
6.more
分页显示文件内容
more -N /*N为每屏指定的行数*/
7.less
分页显示文件内容
8.wc
统计文件行数,单词数和字节数等信息
wc -c /*统计文件中的字节数*/
wc -l /*统计文件中的行数*/
wc -m /*统计文件中的字符数*/
wc -w /*统计文件中的单词个数*/
9.file
判断并显示文件类型
10.du
统计每个文件或目录的磁盘使用情况
du -a /*统计制定目录下每个文件及子目录占用磁盘空间情况*/
du -s /*止痛剂制定文件或目录总共占用磁盘情况*/
du -h /*显示信息时使用更人性化的容量大小单位*/
--apprent-size /*统计文件或目录的真实大小,而不是占用磁盘空间的大小*/
11.grep
在文件中查找并显示包含指定字符串的行,查找字符串可使用正则表达式匹配
grep -i /*查找内容是忽略大小写*/
grep -v /*反转查找,技术处于查找条件不相符的行*/
12.which
在系统地执行路径忠查找命令或程序的文件
which -a /*列出所有找到的结果,而不仅仅是第一个*/
13.whereis
查找指定名称的二进制文件,帮助文件或源文件所在的位置
whereis -b /*只查找指定名称的二进制文件所在的位置*/
whereis -m /*只查找指定名称的帮助文件所在的位置*/
whereis -s /*只查找指定名称的源文件所在的位置*/
14.locate
在预先建立的文件系统数据库中查找指定名称的文件或目录,可以使用updatedb命令建立及更新该数据库
locate -i /*查找是忽略大小写*/
15.find
根据一定的条件在指定目录范围中递归查找需要的文件或目录
find -name /*按文件名称查找,可以只用通配符*/
find -size /*按万大小查找,可以使用K,M等容量单位*/
find -type /*按文件类型查找,类型f,d,l,b,c分别表示普通文件,目录,链接文件,块设备文件,字符设备文件*/
16.cd
更改工作目录,不带任何选项或参数时,默认切换到用户宿主目录
cd -p /*如果指定的目录为符号链接,则切换到对应的物理路径*/
17.mkdir
创建新目录
mkdir -p /*递归创建多级目录*/
18.touch
更新文件的时间标记,如文件不存在则建立对应的空文件
19.cp
复制文件或目录,复制源是目录或多个文件,目标必须是目录
cp -f /*直接强制复制不进行提醒*/
cp -i /*复制时进行提醒确认*/
cp -l /*为源文件建立硬链接,而不是直接复制磁盘数据块*/
cp -p /*复制时保持原文件权限,宿主及时间*/
cp -r /*复制目录时,递归复制所有文件及子目录*/
20.mv
移动文件或目录,可以在移动时改名。移动多个文件或目录时,目标必须是目录
mv -f /*直接强制移动不进行提醒*/
mv -i /*移动时进行提醒确认*/
21.rm
删除文件或目录
mv -f /*直接强制删除而不进行提醒*/
mv -i /*删除是时进行提醒确认*/
mv -r /*递归删除所有文件及目录*/
22.ln
为文件或目录建立链接(link)
ln -s /*建立软链接及符号链接文件,默认为硬链接*/
ln -f /*若链接文件已存在,则直接强制覆盖*/
ln -i /*在覆盖目标连接文件时提醒用户确认*/
23.chmod(Change Mode)
修改文件或目录的访问权限
chmod -R /*递归修改制定目录下的所有文件,子目录的权限*/
24.chown(Change Owner)
修改文件或目录的所有权限,可以同时修改文件的宿主和宿组
chmod -R /*递归修改制定目录下的所有文件,子目录的权限*/
25.chattr
修改文件的i节点属性,使用lsattr命令可以查看对应属性
chattr +i /*将文件的i节点属性设置为不可变,即i节点锁定*/
chattr -i /*去除i节点锁定标记*/
chattr +a /*将文件设置位只可追加内容,原有数据不能修改*/
chattr -a /*去除设置的+a锁定标记*/
压缩和备份管理
1.tar
将文件或目录打包备份,并可通过gzip和bzip2进行压缩,解压
tar -c /*创建.tar包文件*/
tar -C /*解包时指定释放的的目标文件夹*/
tar -f /*表示使用归档文件*/
tar -j /*调用bzip2程序进行压缩或解压*/
tar -P /*打包时保留文件及目录的绝对路径*/
tar -p /*打包时保留文件及目录的权限*/
tar -t /*列表查看包内内容*/
tar -v /*输出详细信息*/
tar -x /*解开.tar各式的包文件*/
tar -z /*调用gzip程序进行压缩*/
2.gzip
创建.gz格式的压缩文件,使用-d选项可以进行解压缩文件
gzip -l /*以最快速度优先的模式创建压缩文件*/
gzip -9 /*以最大压缩比优先的模式创建压缩文件*/
gzip -d /*解压缩.gz格式的压缩文件*/
3.bzip2
创建.gz格式的压缩文件,使用-d选项可以进行解压缩文件
bzip2 -l /*以最快速度优先的模式创建压缩文件*/
bzip2 -9 /*以最大压缩比优先的模式创建压缩文件*/
bzip2 -d /*解压缩.bz2格式的压缩文件*/
3.zip
创建.zip格式的压缩文件
zip -l /*以最快速度优先的模式创建压缩文件*/
zip -9 /*以最大压缩比优先的模式创建压缩文件*/
zip -r /*递归压缩指定目录及其下所有文件和子目录文件*/
4.unzip
解压缩.zip格式的压缩文件
unzip -d /*解压到指定的文件夹*/
RPM软件包管理
1.rpm
安装,卸载,及查询系统中的RPM软件包
rpm -i /*安装新的RPM软件,参数要求是.rpm格式的软件包文件*/
rpm -U /*检查更新现有软件包*/
rpm -e /*卸载指定RPM软件包,参数要求是已安装的RPM软件包的名称*/
rpm -q /*查询系统内已安装的软件包的相关信息,后面可以跟-l,-f,-p等子查询选项*/
rpm -v /*输出详细信息*/
rpm -h /*以"#"号标记显示安装的百分比*/
rpm -F /*检查并更新系统中的某个软件包,若该软件包原来并未安装,则放弃安装*/
rpm --force /*强制安装某个软件*/
rpm --nodeps /*在安装或升级,卸载一个软件包时,不检查与其他软件包的依赖关系*/
shell变量管理
1.echo
显示指定的字符串或变量的内容,不指定任何参数时将显示一个空行
2.read
从标准输入读入一个字符串并赋值给指定的变量
read -p /*在接受输入内容前显示提示字符串的内容,以增强交互性*/
3.export
将局部变量导出为全局变量或取消设置,允许在命令中直接为变量赋值
export -p /*查看当前命令环境中导出的全局变量
export -n /*取消全局变量的全局属性*/
4.exit
退出当前shell程序或命令环境,并返回一个退出状态的数字(0为正常,1为异常)
5.expr
计算数值表达式,可以使用+,-,*,/,%等运算符(加,减,乘,除,取模/求余)
格式:expr <运算表达式>
进程与服务管理
1.ps
以静态快照方式输出当前运行的进程的状态统计数据
格式:ps [选项]
ps a /*显示当前终端下的所有进程信息,包括其他用户信息*/
ps u /*使用以用户为主的格式输出进程信息*/
ps x /*显示当前用户在所有终端下的进程信息*/
ps -e /*显示系统内所有进程信息*/
ps -l /*使用长格式显示进程信息*/
ps -f /*使用完整格式显示进程信息*/
2.top
动态显示当前运行的进程信息
格式:top [-d] 时间
top -d /*指定动态信息的刷新间隔时间,单位为秒。也可以使用ss.tt格式*/
3.pstree
以树型结构查看系统中的进程及其相互关系(进程数)
格式:pstree [-aup]
pstree -a /*显示进程对应的命令行*/
pstree -u /*显示进程对应的用户名信息*/
pstree -p /*显示进程对应的进程号信息*/
4.kill
终止指定进程号的进程,PID可以通过ps命令获得
格式:kill [-9] <PID号>
KILL -9 /*无条件强行终止进程*/
5.killall
与kill命令相似
格式:killall [-9] <进程名>
6.free
查看系统内存,交互空间的使用情况
格式:free [-bkm]
free -b /*以Byte为单位显示信息*/
free -k /*以Kb为单位显示信息*/
free -m /*以Mb为单位显示信息*/
7.chkconfig
射洪服务在不同运行级别的自启动状态,以及添加删除系统服务
格式:chkconfig [--level 运行级别] <服务名> <on或off>
chkconfig --level <服务名>/*指定控制服务的运行级别范围*/
chkconfig --list <服务名> /*查看当前系统中服务的自启动状态*/
chkconfig --add <服务名>/*添加新的系统服务*/
chkconfig --del <服务名>/*删除系统服务*/
8.ntsysv
提供一个交互式的伪图形程序,用于设置各种服务在不同运行级别的自启动状态
格式:ntsysv [--level 运行级别]
其用法和chkconfig的用法类似......
用户和组管理
1.useradd
添加系统用户
格式:useradd [选项] <用户名>
useradd -d /*制定用户的宿主目录*/
useradd -e /*指定用户的账号失效时间,可使用YYYY-MM-DD的日期格式*/
useradd -g /*指定用户的基本组名,也可以使用GID*/
useradd -G /*指定用户的公共组名,也可以使用GID*/
useradd -M /*不为用户建立并初始化宿主目录*/
useradd -s /*指定用户的登陆shell环境*/
useradd -u /*指定用户的UID号*/
2.passwd
设置系统用户密码,及锁定解锁用户帐户,若为指定用户,默认设置当前用户密码
格式:passwd [选项] <用户名>
passwd -d /*清空指定用户密码*/
passwd -l /*锁定指定用户账户*/
passwd -S /*查看指定用户状态*/
passwd -u /*解锁指定用户账户*/
3.usermod
修改指定用户帐户信息,大部分选项与useradd命令中的相同,不再赘余!可参考useradd选项设置
格式:usermod [选项] <用户名>
4.userdel
删除指定用户帐户
格式:userdel [-r] <用户名>
userdel -r /*删除用户后,也将该用户的宿主目录一并删除*/
5.groupadd
添加一个系统用户组
格式:groupadd [-g] <组名>
groupadd -g /*为新建的组指定GID组标记*/
6.groupdel
删除一个系统用户组
格式:groupdel <组名>
7.id
输出指定用户的身份标记信息,省略用户名参数时则输出当前用户的信息
格式:id [选项] <用户名>
id -u /*只显示有效用户信息*/
id -g /*只显示有效组信息*/
id -n /*只输出用户名称*/
8.users
查看登陆到当前主机中的用户,(另一个命令who可同时显示终端,时间,登陆地点等信息)
各式: users/who
9.su
切换为另一个用户身份,不指定参数时默认切换到root用户
格是:su [-l] [目标用户名]
su -l /*使用目标用户的登陆shell环境,该选项可简写为"-"
1.pwd
显示当前用户所在的工作目录
pwd -p /*显示链接到的真实路径*/
2.ls
列出目录及文件的属性信息
ls -a /*列出所有文件和子目录,包括隐藏文件和目录*/
ls -A /*列出所有文件和目录,但不包括隐藏文件和目录*/
ls -d /*知县是目录本深的属性信息*/
ls -l /*以长格式显示文件和目录的详细信息*/
ls -i /*先是文件的i节点编号*/
ls -h /*显示信息是更人性化容量的大小,如KB,MB,GB等*/
ls -R /*递归显示制定目录下的各级目录及文件*/
3.cat
用于显示指定文件的内容
cat -n /*显示文件内容是在每一行行首添加行号*/
cat -b /*显示文件内容是为非空白添加行号*/
4.tail
查看文件末尾指定行数的内容
tail -N /*N为用户指定的行数*/
tail -f /*跟踪文件中新增加的内容*/
5.head
查看文件开头指定行数的内容
head -N /*N为用户指定的行数*/
6.more
分页显示文件内容
more -N /*N为每屏指定的行数*/
7.less
分页显示文件内容
8.wc
统计文件行数,单词数和字节数等信息
wc -c /*统计文件中的字节数*/
wc -l /*统计文件中的行数*/
wc -m /*统计文件中的字符数*/
wc -w /*统计文件中的单词个数*/
9.file
判断并显示文件类型
10.du
统计每个文件或目录的磁盘使用情况
du -a /*统计制定目录下每个文件及子目录占用磁盘空间情况*/
du -s /*止痛剂制定文件或目录总共占用磁盘情况*/
du -h /*显示信息时使用更人性化的容量大小单位*/
--apprent-size /*统计文件或目录的真实大小,而不是占用磁盘空间的大小*/
11.grep
在文件中查找并显示包含指定字符串的行,查找字符串可使用正则表达式匹配
grep -i /*查找内容是忽略大小写*/
grep -v /*反转查找,技术处于查找条件不相符的行*/
12.which
在系统地执行路径忠查找命令或程序的文件
which -a /*列出所有找到的结果,而不仅仅是第一个*/
13.whereis
查找指定名称的二进制文件,帮助文件或源文件所在的位置
whereis -b /*只查找指定名称的二进制文件所在的位置*/
whereis -m /*只查找指定名称的帮助文件所在的位置*/
whereis -s /*只查找指定名称的源文件所在的位置*/
14.locate
在预先建立的文件系统数据库中查找指定名称的文件或目录,可以使用updatedb命令建立及更新该数据库
locate -i /*查找是忽略大小写*/
15.find
根据一定的条件在指定目录范围中递归查找需要的文件或目录
find -name /*按文件名称查找,可以只用通配符*/
find -size /*按万大小查找,可以使用K,M等容量单位*/
find -type /*按文件类型查找,类型f,d,l,b,c分别表示普通文件,目录,链接文件,块设备文件,字符设备文件*/
16.cd
更改工作目录,不带任何选项或参数时,默认切换到用户宿主目录
cd -p /*如果指定的目录为符号链接,则切换到对应的物理路径*/
17.mkdir
创建新目录
mkdir -p /*递归创建多级目录*/
18.touch
更新文件的时间标记,如文件不存在则建立对应的空文件
19.cp
复制文件或目录,复制源是目录或多个文件,目标必须是目录
cp -f /*直接强制复制不进行提醒*/
cp -i /*复制时进行提醒确认*/
cp -l /*为源文件建立硬链接,而不是直接复制磁盘数据块*/
cp -p /*复制时保持原文件权限,宿主及时间*/
cp -r /*复制目录时,递归复制所有文件及子目录*/
20.mv
移动文件或目录,可以在移动时改名。移动多个文件或目录时,目标必须是目录
mv -f /*直接强制移动不进行提醒*/
mv -i /*移动时进行提醒确认*/
21.rm
删除文件或目录
mv -f /*直接强制删除而不进行提醒*/
mv -i /*删除是时进行提醒确认*/
mv -r /*递归删除所有文件及目录*/
22.ln
为文件或目录建立链接(link)
ln -s /*建立软链接及符号链接文件,默认为硬链接*/
ln -f /*若链接文件已存在,则直接强制覆盖*/
ln -i /*在覆盖目标连接文件时提醒用户确认*/
23.chmod(Change Mode)
修改文件或目录的访问权限
chmod -R /*递归修改制定目录下的所有文件,子目录的权限*/
24.chown(Change Owner)
修改文件或目录的所有权限,可以同时修改文件的宿主和宿组
chmod -R /*递归修改制定目录下的所有文件,子目录的权限*/
25.chattr
修改文件的i节点属性,使用lsattr命令可以查看对应属性
chattr +i /*将文件的i节点属性设置为不可变,即i节点锁定*/
chattr -i /*去除i节点锁定标记*/
chattr +a /*将文件设置位只可追加内容,原有数据不能修改*/
chattr -a /*去除设置的+a锁定标记*/
压缩和备份管理
1.tar
将文件或目录打包备份,并可通过gzip和bzip2进行压缩,解压
tar -c /*创建.tar包文件*/
tar -C /*解包时指定释放的的目标文件夹*/
tar -f /*表示使用归档文件*/
tar -j /*调用bzip2程序进行压缩或解压*/
tar -P /*打包时保留文件及目录的绝对路径*/
tar -p /*打包时保留文件及目录的权限*/
tar -t /*列表查看包内内容*/
tar -v /*输出详细信息*/
tar -x /*解开.tar各式的包文件*/
tar -z /*调用gzip程序进行压缩*/
2.gzip
创建.gz格式的压缩文件,使用-d选项可以进行解压缩文件
gzip -l /*以最快速度优先的模式创建压缩文件*/
gzip -9 /*以最大压缩比优先的模式创建压缩文件*/
gzip -d /*解压缩.gz格式的压缩文件*/
3.bzip2
创建.gz格式的压缩文件,使用-d选项可以进行解压缩文件
bzip2 -l /*以最快速度优先的模式创建压缩文件*/
bzip2 -9 /*以最大压缩比优先的模式创建压缩文件*/
bzip2 -d /*解压缩.bz2格式的压缩文件*/
3.zip
创建.zip格式的压缩文件
zip -l /*以最快速度优先的模式创建压缩文件*/
zip -9 /*以最大压缩比优先的模式创建压缩文件*/
zip -r /*递归压缩指定目录及其下所有文件和子目录文件*/
4.unzip
解压缩.zip格式的压缩文件
unzip -d /*解压到指定的文件夹*/
RPM软件包管理
1.rpm
安装,卸载,及查询系统中的RPM软件包
rpm -i /*安装新的RPM软件,参数要求是.rpm格式的软件包文件*/
rpm -U /*检查更新现有软件包*/
rpm -e /*卸载指定RPM软件包,参数要求是已安装的RPM软件包的名称*/
rpm -q /*查询系统内已安装的软件包的相关信息,后面可以跟-l,-f,-p等子查询选项*/
rpm -v /*输出详细信息*/
rpm -h /*以"#"号标记显示安装的百分比*/
rpm -F /*检查并更新系统中的某个软件包,若该软件包原来并未安装,则放弃安装*/
rpm --force /*强制安装某个软件*/
rpm --nodeps /*在安装或升级,卸载一个软件包时,不检查与其他软件包的依赖关系*/
shell变量管理
1.echo
显示指定的字符串或变量的内容,不指定任何参数时将显示一个空行
2.read
从标准输入读入一个字符串并赋值给指定的变量
read -p /*在接受输入内容前显示提示字符串的内容,以增强交互性*/
3.export
将局部变量导出为全局变量或取消设置,允许在命令中直接为变量赋值
export -p /*查看当前命令环境中导出的全局变量
export -n /*取消全局变量的全局属性*/
4.exit
退出当前shell程序或命令环境,并返回一个退出状态的数字(0为正常,1为异常)
5.expr
计算数值表达式,可以使用+,-,*,/,%等运算符(加,减,乘,除,取模/求余)
格式:expr <运算表达式>
进程与服务管理
1.ps
以静态快照方式输出当前运行的进程的状态统计数据
格式:ps [选项]
ps a /*显示当前终端下的所有进程信息,包括其他用户信息*/
ps u /*使用以用户为主的格式输出进程信息*/
ps x /*显示当前用户在所有终端下的进程信息*/
ps -e /*显示系统内所有进程信息*/
ps -l /*使用长格式显示进程信息*/
ps -f /*使用完整格式显示进程信息*/
2.top
动态显示当前运行的进程信息
格式:top [-d] 时间
top -d /*指定动态信息的刷新间隔时间,单位为秒。也可以使用ss.tt格式*/
3.pstree
以树型结构查看系统中的进程及其相互关系(进程数)
格式:pstree [-aup]
pstree -a /*显示进程对应的命令行*/
pstree -u /*显示进程对应的用户名信息*/
pstree -p /*显示进程对应的进程号信息*/
4.kill
终止指定进程号的进程,PID可以通过ps命令获得
格式:kill [-9] <PID号>
KILL -9 /*无条件强行终止进程*/
5.killall
与kill命令相似
格式:killall [-9] <进程名>
6.free
查看系统内存,交互空间的使用情况
格式:free [-bkm]
free -b /*以Byte为单位显示信息*/
free -k /*以Kb为单位显示信息*/
free -m /*以Mb为单位显示信息*/
7.chkconfig
射洪服务在不同运行级别的自启动状态,以及添加删除系统服务
格式:chkconfig [--level 运行级别] <服务名> <on或off>
chkconfig --level <服务名>/*指定控制服务的运行级别范围*/
chkconfig --list <服务名> /*查看当前系统中服务的自启动状态*/
chkconfig --add <服务名>/*添加新的系统服务*/
chkconfig --del <服务名>/*删除系统服务*/
8.ntsysv
提供一个交互式的伪图形程序,用于设置各种服务在不同运行级别的自启动状态
格式:ntsysv [--level 运行级别]
其用法和chkconfig的用法类似......
用户和组管理
1.useradd
添加系统用户
格式:useradd [选项] <用户名>
useradd -d /*制定用户的宿主目录*/
useradd -e /*指定用户的账号失效时间,可使用YYYY-MM-DD的日期格式*/
useradd -g /*指定用户的基本组名,也可以使用GID*/
useradd -G /*指定用户的公共组名,也可以使用GID*/
useradd -M /*不为用户建立并初始化宿主目录*/
useradd -s /*指定用户的登陆shell环境*/
useradd -u /*指定用户的UID号*/
2.passwd
设置系统用户密码,及锁定解锁用户帐户,若为指定用户,默认设置当前用户密码
格式:passwd [选项] <用户名>
passwd -d /*清空指定用户密码*/
passwd -l /*锁定指定用户账户*/
passwd -S /*查看指定用户状态*/
passwd -u /*解锁指定用户账户*/
3.usermod
修改指定用户帐户信息,大部分选项与useradd命令中的相同,不再赘余!可参考useradd选项设置
格式:usermod [选项] <用户名>
4.userdel
删除指定用户帐户
格式:userdel [-r] <用户名>
userdel -r /*删除用户后,也将该用户的宿主目录一并删除*/
5.groupadd
添加一个系统用户组
格式:groupadd [-g] <组名>
groupadd -g /*为新建的组指定GID组标记*/
6.groupdel
删除一个系统用户组
格式:groupdel <组名>
7.id
输出指定用户的身份标记信息,省略用户名参数时则输出当前用户的信息
格式:id [选项] <用户名>
id -u /*只显示有效用户信息*/
id -g /*只显示有效组信息*/
id -n /*只输出用户名称*/
8.users
查看登陆到当前主机中的用户,(另一个命令who可同时显示终端,时间,登陆地点等信息)
各式: users/who
9.su
切换为另一个用户身份,不指定参数时默认切换到root用户
格是:su [-l] [目标用户名]
su -l /*使用目标用户的登陆shell环境,该选项可简写为"-"