LINUX常用操作命令大全超级详细

一、网络相关

语法命令 功能描述
ifconfig 显示所有网络接口的配置信息
ping 目的主机 测试当前服务器是否可以连接目的主机
hostname 查看当前服务器的主机名称
hostnamectl set-hostname newname(这里修改的新用户名) 直接修改主机名称

二、系统管理(Centos7)

multi-user.target 等价于原运行级别 3(多用户有网,无图形界面)

graphical.target 等价于原运行级别 5(多用户有网,有图形界面)

语法命令 功能描述
systemctl  start | stop | restart | status  服务名 服务管理
systemctl list-unit-files 查看服务开机启动状态
systemctl disable service_name 关掉指定服务的自动启动
systemctl disable service_name 开启指定服务的自动启动
systemctl get-defau 查看当前运行级别
systemctl set-default TARGET.target (这里 TARGET 取 multi-user 或者 graphical) 修改当前运行级别
CTRL+ALT+F3(等价于init 3) 进入运行级别3(多用户有网,无图形界面)
CTRL+ALT+F1(等价于 init 5) 进入运行级别5(多用户有网,有图形界面)
systemctl status firewa 查看防火墙状态
systemctl stop firewall 临时关闭防火墙
systemctl enable firewalld.servic 查看防火墙开机启动状态
systemctl disable firewalld.servic 设置开机时关闭防火墙

三、常用基本命令

(1)帮助命令

语法命令 功能描述
type 命令 查询命令是否为内置命令
man [命令或配置文件] 获得外部命令帮助信息(全)
命令 --help 获得外部命令帮助信息
help [命令或配置文件] 获得 shell 内置命令的帮助信息
history 查看历史命令
ctrl + c 停止进程
ctrl+l 清屏,等同于 clear;彻底清屏是:reset
善于用 tab 键 提示(更重要的是可以防止敲错)
上下键 查找执行过的命令
sync 将数据由内存同步到硬盘中
halt 停机,关闭系统,但不断电
poweroff 关机,断电
reboot 就是重启,等同于 shutdown -r now
shutdown [选项] 时间

选项【-H:相当于--halt,停机;-r   -r=reboot 重启】

时间 【now 立刻;时间:等待多久关机(单位:分钟)】

(2)文件目录类

        ①显示

语法命令 功能描述
pwd 显示当前工作目录的绝对路径
pwd -P
ls -a 列出目录内容全部的文件,连同隐藏档( 开头为 . 的文件) 一起列出来(常用)
ls -l 列出目录内容以长数据串列出,包含文件的属性与权限等等数据;(常用)等价于“ll”

        

        ②切换路径

语法命令 功能描述
cd 绝对路径 切换绝对路径
cd 相对路径 切换相对路径
cd ~或cd 回到自己的家目录
cd - 回到上一次所在目录
cd .. 回到当前目录的上一级目录
cd -P 跳转到实际物理路径,而非快捷方式路径

(3)创建/删除目录

语法命令 功能描述
mkdir 创建的目录名 创建单个目录
mkdir -p 创建的目录名 创建多层目录
rmdir 要删除的空目录 删除空目录
rmdir -p 要删除的空目录 删除多级空目录

(4)文件/目录操作

        ①创建复制

语法命令 功能描述
touch 文件名称 创建空文件
cp  source dest 复制source文件到dest
cp -r source dest 递归复制整个文件夹source到dest
\cp 强制覆盖不提示的方法

         ②删除

语法命令 功能描述
rm  deleteFile 删除名为deleteFile文件
rm -r  deleteFile 递归删除目录中所有内容
rm -rf  deleteFile 递归删除且不提示确认目录中所有内容
rm -f  deleteFile 强制执行删除操作,而不提示用于进行确认
rm -v  deleteFile 删除文件且显示指令的详细执行过程

        ③移动、重命名

语法命令 功能描述
mv oldNameFile newNameFile 重命名
mv /temp/movefile /targetFolde 移动文件/temp/movefile到/targetFolde

        ④查看文件内容

语法命令 功能描述
cat 要查看的文件 查看文件中内容
cat -n 要查看的文件 查看文件中内容并显示所有行的行号,包括空行。
more 要查看的文件

                        要查看的文件

less 要查看的文件

                分屏显示文件内容

echo  [输出内容] 输出内容到控制台
echo -e [输出内容]

        输出内容到控制台(内容支持支持反斜线控制的字符转换)

head 文件 查看文件头10行内容
head -n 5 文件 查看文件头5行内容,5可以是任意行数
tail 文件 查看文件尾部10行内容
tail -n 5 文件 查看文件尾部5行内容,5可以是任意行数
tail -f 文件 实时追踪该文档的所有更新

        ⑤> 输出重定向和 >> 追加

语法命令 功能描述
cat 文件 1 > 文件 2 将文件 1 的内容覆盖到文件 2
echo “内容” >文件 将内容覆盖到文件 
ls -al >>文件 列表的内容追加到文件的末尾

⑥In软连接

        软链接也称为符号链接,类似于 windows 里的快捷方式,有自己的数据块,主要存放 了链接其他文件的路径

经验技巧:

  • 删除软链接: rm -rf 软链接名,而不是 rm -rf 软链接名/
  • 如果使用 rm -rf 软链接名/ 删除,会把软链接对应的真实目录下内容删掉
  • 查询:通过 ll 就可以查看,列表属性第 1 位是 l,尾部会有位置指向

语法命令 功能描述
ln -s [原文件或目录] [软链接名 给原文件创建一个软链接

(5)时间日期类

语法命令 功能描述
cal 显示本月日历
cal 2022 显示2022年的日历(2022可变)
date 查看系统当前日期时间
date +%Y 显示当前年(+号也要输入)
date +%m 显示当前月(+号也要输入)
date +%d 显示当前哪一天(+号也要输入)
date "+%Y-%m-%d %H:%M:%S" 显示年月日时分秒(+-号也要输入)
date -d '1 days ago' 显示前一天时间(数字1可变)
date -d '-1 days ago' 显示明天时间(数字1可变)
date -s "2017-06-19 20:52:18“ 设置系统当前时间

(6)用户管理命令

语法命令 功能描述
useradd 用户名 添加新用户
useradd -g 组名 用户名 添加新用户到某个组
userdel 用户名 删除用户但保存用户主目录
userdel -r 用户名 用户和用户主目录,都删除
usermod -g 用户组 用户名 修改用户
passwd 用户名 设置用户密码
id 用户名 查看用户是否存在
cat /etc/passwd 查看创建了哪些用户
su 用户名 切换用户,只能获得用户的执行权限,不能获得环境变量
su - 用户名称 切换到用户并获得该用户的环境变量及执行权限
whoami 显示自身用户名称
who am i 显示登录用户的用户名以及登陆时间

①使用 sudo 设置普通用户具有 root 权限

        修改配置文件:

         

 

        修改 /etc/sudoers 文件,找到下面一行(91 行),在 root 下面添加一行,如下所示:

        或者配置成采用 sudo 命令时,不需要输入密码 

        修改完毕,现在可以用 atguigu 帐号登录,然后用命令 sudo ,即可获得 root 权限进行 操作。

(7)用户组管理命令

        用户组的管理涉及用户组的添加、删除和修改。组的增加、删除和修改实际上就是对 /etc/group文件的更新。

        wheel 管理组 在此组中的用户有root的权限

语法命令 功能描述
groupadd 组名 新增组
groupdel 删除组
groupmod -n 新组名 老组名 修改组名
cat /etc/group 查看创建了哪些组

(8)文件权限类

        在Linux中我们可以使用ll或者ls -l命令来显示一个文件的属性以及文件所属的用户和组。

        

1)从左到右的 10 个字符表示,如图 

        

如果没有权限,就会出现减号[ - ]而已。从左至右用0-9这些数字来表示:

  1. 0 首位表示类型 在Linux中第一个字符代表这个文件是目录、文件或链接文件等等 - 代表文件 d 代表目录 l 链接文档(link file);
  2. 第1-3位确定属主(该文件的所有者)拥有该文件的权限。---User
  3. 第4-6位确定属组(所有者的同组用户)拥有该文件的权限,---Group
  4. 第7-9位确定其他用户拥有该文件的权限 ---Othe

2)rwx 作用文件和目录的不同解释:

        ①作用到文件:

  • [ r ]代表可读(read): 可以读取,查看
  • [ w ]代表可写(write): 可以修改,但是不代表可以删除该文件,删除一个文件的前 提条件是对该文件所在的目录有写权限,才能删除该文件.
  • [ x ]代表可执行(execute):可以被系统执行

        

        ②作用到目录:

  • [ r ]代表可读(read): 可以读取,ls查看目录内容
  • [ w ]代表可写(write): 可以修改,目录内创建+删除+重命名目录
  • [ x ]代表可执行(execute):可以进入该目录

        文件基本属性介绍

(1)如果查看到是文件:链接数指的是硬链接个数。

(2)如果查看的是文件夹:链接数指的是子文件夹个数。

 

        chmod 改变权限

  • 第一种方式变更权限 chmod [{ugoa}{+-=}{rwx}] 文件或目录
  • 第二种方式变更权限 chmod [mode=421 ] [文件或目录]

        注:

  • u:所有者 g:所有组 o:其他人 a:所有人(u、g、o的总和)
  • r=4 w=2 x=1 rwx=4+2

        chown 改变所有者

        chown [选项(-R:递归操作)] [最终用户] [文件或目录]

                (功能描述:改变文件或者目录的所有者)

        

        chgrp 改变所属组

        chgrp [最终用户组] [文件或目录] (功能描述:改变文件或者目录的所属组)

语法命令 功能描述
chmod u+x 文件名称 修改文件使其所属主用户具有执行权限
chmod g+x 文件名称 修改文件使其所属组用户具有执行权限
chmod u-x,o+x 文件名称 修改文件所属主用户执行权限,并使其他用户具有执行权限
chmod 777 文件名称 采用数字的方式,设置文件所有者、所属组、其他用户都具有可读可写可执行权 限
chmod -R 777 文件名称 修改整个文件夹里面的所有文件的所有者、所属组、其他用户都具有可读可写可 执行权限。
chown 最终用户 文件或目录 修改文件所有者
chown -R atguigu:atguigu xiyou 递归改变文件所有者和所有组
chgrp 最终用户组 文件或目录 改变文件或者目录的所属组

(9)搜索查找类

①find 查找文件或者目

        find [搜索范围] [选项]

 

语法命令 功能描述
find / -name "*.txt" 按文件名:根据名称查找/目录下的filename.txt文件。
find / -user atguigu 查找/目录下,用户名称为atguigu的文件
find /home -size +204800 按文件大小:在/home目录下查找大于200m的文件(+n 大于 -n小于 n等于)

②locate 快速定位文件路径

        由于 locate 指令基于数据库进行查询,所以第一次运行前,必须使用 updatedb 指令创 建 locate 数据库

语法命令 功能描述
updatedb 更新 locate 数据库
locate tmp

                      查找名为tmp文件的路径

③grep 过滤查找及“|”管道符

        管道符,“|”,表示将前一个命令的处理结果输出传递给后面的命令处理

        

        grep 选项(-n[显示匹配行及行号]) 查找内容 源文件

语法命令 功能描述
ls | grep -n test 查找某文件在第几行

(10)压缩和解压类

①gzip/gunzip 压缩

经验技巧:

  1. 只能压缩文件不能压缩目录 
  2. 不保留原来的文件 
  3. 同时多个文件会产生多个压缩包
语法命令 功能描述
gzip houge.txt 压缩名为houge.txt的文件
gunzip houge.txt.gz

                解压压名为houge.txt.gz的文件

②zip/unzip 压缩

        zip 压缩命令在windows/linux都通用,可以压缩目录且保留源文件。

        zip [选项] XXX.zip 将要压缩的内容 (功能描述:压缩文件和目录的命令)

 

语法命令 功能描述
zip mypackage.zip houge.txt bailongma.txt 压缩 houge.txt 和bailongma.txt,压缩后的名称为mypackage.zip
unzip mypackage.zip 解压 mypackage.zip
unzip mypackage.zip -d /opt 解压mypackage.zip到指定目录/opt

③tar打包

        tar [选项] XXX.tar.gz 将要打包进去的内容

                (功能描述:打包目录,压缩后的 文件格式.tar.gz)

语法命令 功能描述
tar -zcvf houma.tar.gz houge.txt bailongma.txt houge.txt 压缩多个文件
tar -zcvf abc.tar.gz xi/

                                 压缩目录

tar -zxvf houma.tar 解压到当前目录

     tar -zxvf 要解压的文件.tar.gz -C 指定目录路径

解压到指定目录

 

(11)磁盘查看和分区类

①du 查看文件和目录占用的磁盘空间

基本语法:

        du [选项] (功能描述:显示目录下每个子目录的磁盘使用情况)

语法命令 功能描述
du -sh 查看当前目录占用的磁盘空间大小

 

②df 查看磁盘空间使用情况

语法命令 功能描述
df -h 查看磁盘使用情况(以人们较易阅读的 GBytes, MBytes, KBytes 等格式自行显)

③lsblk 查看设备挂载情况

语法命令 功能描述
lsblk 查看设备挂载情况
lsblk -f 查看详细的设备挂载情况,显示文件系统信息

④mount/umount 挂载/卸载

        对于Linux用户来讲,不论有几个分区,分别分给哪一个目录使用,它总归就是一个根 目录、一个独立且唯一的文件结构。

         Linux中每个分区都是用来组成整个文件系统的一部分,它在用一种叫做“挂载”的处理 方法,它整个文件系统中包含了一整套的文件和目录,并将一个分区和一个目录联系起来, 要载入的那个分区将使它的存储空间在这个目录下获得。

挂载前准备:必须要有光盘或者已经连接镜像文件

基本语法:

  • mount [-t vfstype] [-o options] device dir (功能描述:挂载设备)
  • umount 设备文件名或挂载点 (功能描述:卸载设备)
  • 参数说明:

 

设置开机自动挂载

        ①进入

        ②添加红框中内容,保存退出。

 

语法命令 功能描述
mkdir /mnt/cdrom 建立挂载点目录
mount -t iso9660 /dev/cdrom /mnt/cdrom/ 设备/dev/cdrom 挂载到 挂载点 : /mnt/cdrom 中
umount /mnt/cdrom 卸载光盘镜像文件

⑤fdisk 分区

        该命令必须在 root 用户下才能!

        基本语法:

  • fdisk -l (功能描述:查看磁盘分区详情)
  • fdisk 硬盘设备名 (功能描述:对新增硬盘进行分区操作)

        功能说明:

(1)Linux 分区

  • Device:分区序列
  • Boot:引导
  • Start:从X磁柱开始
  • End:到Y磁柱结束
  • Blocks:容量
  • Id:分区类型ID
  • System:分区类型

(2)分区操作按键说明

  • m:显示命令列表
  • p:显示当前磁盘分区
  • n:新增分区
  • w:写入分区信息并退出
  • q:不保存分区信息直接退出
语法命令 功能描述
fdisk -l 查看系统分区情况

(12)进程管理类

①ps 查看当前系统进程状态

基本语法:

  1. ps aux | grep xxx (功能描述:查看系统中所有进程)
  2. ps -ef | grep xxx (功能描述:可以查看子父进程之间的关系)

经验技巧:

  • 如果想查看进程的 CPU 占用率和内存占用率,可以使用 aux;
  • 如果想查看进程的父进程 ID 可以使用 -ef;

(1)ps aux 显示信息说明:

  • USER:该进程是由哪个用户产生的
  • PID:进程的 ID 号
  • %CPU:该进程占用CPU 资源的百分比,占用越高,进程越耗费资源;
  • %MEM:该进程占用物理内存的百分比,占用越高,进程越耗费资源;
  • VSZ:该进程占用虚拟内存的大小,单位 KB;
  • RSS:该进程占用实际物理内存的大小,单位 KB;
  • TTY:该进程是在哪个终端中运行的。对于 CentOS 来说,tty1 是图形化终端, tty2-tty6 是本地的字符界面终端。pts/0-255 代表虚拟终端。
  • STAT:进程状态。常见的状态有:R:运行状态、S:睡眠状态、T:暂停状态、 Z:僵尸状态、s:包含子进程、l:多线程、+:前台显示
  • START:该进程的启动时间
  • TIME:该进程占用 CPU 的运算时间,注意不是系统时间
  • COMMAND:产生此进程的命令名

(2)ps -ef 显示信息说明:

  • UID:用户 ID
  • PID:进程 ID
  • PPID:父进程 ID
  • C:CPU 用于计算执行优先级的因子。数值越大,表明进程是 CPU 密集型运算, 执行优先级会降低;数值越小,表明进程是 I/O 密集型运算,执行优先级会提高
  • STIME:进程启动的时间
  • TTY:完整的终端名称
  • TIME:CPU 时间
  • CMD:启动进程所用的命令和参数
语法命令 功能描述
ps aux 查看进程的 CPU 占用率和内存占用率
ps -ef 查看进程的父进程 ID

②kill 终止进程

基本语法:

  • kill [选项(-9:表示强迫进程立即停止)] 进程号 (功能描述:通过进程号杀死进程)
  • killall 进程名称    (功能描述:通过进程名称杀死进程,也支持通配符,这 在系统因负载过大而变得很慢时很有用)
语法命令 功能描述
kill -9 5102 强迫浏览器进程立即停止
killall firefox 通过进程名称杀死进程

③pstree 查看进程树

        pstree [选项]

 

语法命令 功能描述
pstree -p 显示进程 pid
pstree -u 显示进程所属用户

④top 实时监控系统进程

基本命令:

        top [选项]

 

 

查询结果字段解释:

第一行信息为任务队列信息:

 

第二行为进程信息:

 

第三行为 CPU信息:

 

第四行为物理内存信息:

 

第五行为交换分区(swap)信息:

语法命令 功能描述
top -d 1 指定 top 命令每隔1秒更新监控进程
top -i 使 top 不显示任何闲置或者僵死进程
top -p 2575 监控进程id为1的进程状态

⑤netstat 显示网络状态和端口占用信息

        基本语法:

  • netstat -anp | grep 进程号 (功能描述:查看该进程网络信息)
  • netstat –nlp | grep 端口号 (功能描述:查看网络端口号占用情况)、

 

语法命令 功能描述
netstat -anp | grep sshd 通过进程号查看sshd进程的网络信息
netstat -nltp | grep 22 查看某端口号是否被占用

(13)crontab 系统定时任务

①crontab 服务管理

语法命令 功能描述
systemctl restart crond 重新启动 crond 服务

②crontab 定时任务设置

基本语法:

        crontab [选项]

 

编辑crontab定时任务说明:

        (1)进入 crontab 编辑界面。会打开 vim 编辑你工作

                                                              

  crontab -e

        书写格式:* * * * * 执行的任务

 

        参数说明:

 

 

语法命令 功能描述
*/1 * * * * /bin/echo ”11” >> /root/bailongma.txt 编辑定时任务,每隔 1 分钟,向/root/bailongma.txt 文件中添加一个 11 的数

(14)软件包管理

①rpm

        ①rpm查询命令:

rpm -qa(功能描述:查询所安装的所有 rpm 软件包)

        经验技巧:

由于软件包比较多,一般都会采取过滤。rpm -qaa | grep rpm软件包

        ②rpm 卸载命令

        基本语法:

  1. rpm -e RPM软件包
  2. rpm -e --nodeps 软件包

 

        ③rpm安装命令 

        基本语法:

rpm -ivh RPM 包全名

语法命令 功能描述
rpm -qa |grep firefox 查询firefox软件安装情况
rpm -e firefox 卸载firefox软件

②yum仓库

        基本语法

yum [选项] [参数]

 

 

语法命令 功能描述
yum -yinstall firefox 采用 yum 方式安装 firefox

相关文章

学习编程是顺着互联网的发展潮流,是一件好事。新手如何学习...
IT行业是什么工作做什么?IT行业的工作有:产品策划类、页面...
女生学Java好就业吗?女生适合学Java编程吗?目前有不少女生...
Can’t connect to local MySQL server through socket \'/v...
oracle基本命令 一、登录操作 1.管理员登录 # 管理员登录 ...
一、背景 因为项目中需要通北京网络,所以需要连vpn,但是服...