【Linux】Linux基础

Linux基础

参考文档https://blog.csdn.net/dengjin20104042056/article/details/94669639

命令行终端颜色设置(命令行执行)

PS1='[${debian_chroot:+($debian_chroot)}\[\033[01;33;1m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]]\$ '

Linux中不同文件颜色的文件类型

颜色         说明
-----------------------------
绿色文件      可执行文件,可执行的程序
红色文件      压缩文件或者包文件
蓝色文件      目录 
白色文件      普通,如文本文件,配置文件,源码文件等
浅蓝色文件    链接文件,主要是使用ln命令建立的文件
红色闪烁      表示链接的文件有问题
黄色文件      表示设备文件
灰色文件      表示其它文件

文件磁盘管理

—pwd

参考 https://blog.csdn.net/dengjin20104042056/article/details/95521097
操作

  1. 查看当前目录绝对路径
  2. 查看上次工作目录
  3. 如果目录是个符号链接,pwd 显示链接(link)路径;pwd -P 显示实际路径
  4. 查看pwd命令的版本
  5. 查看帮助信息

命令

1.查看当前目录绝对路径
echo $PWD

2.查看上次工作目录
echo $OLDPWD

3.如果目录是个符号链接,pwd 显示链接(link)路径;pwd -P 显示实际路径
pwd -P

4.查看pwd命令的版本
/usr/bin/pwd --version

5.查看帮助信息
/usr/bin/pwd --help

—cd

参考 https://blog.csdn.net/dengjin20104042056/article/details/95528739
操作

  1. 切换到当前工作目录
  2. 切换到上级目录
  3. 切换到上上级目录
  4. 进入当前用户的家目录
  5. 切换至带有空格的目录
  6. 把上个命令的参数作为cd参数使用 !$表示
  7. 使用相对路径切换目录
  8. 使用绝对路径切换目录
  9. 使用通配符切换目录(匹配到多个情况下默认选择第一个进入)
  10. 进入上次工作目录

命令

1.切换到当前工作目录
cd .

2.切换到上级目录
cd ..

3.切换到上上级目录
cd ../..

4.进入当前用户的家目录
cd -

5.切换至带有空格的目录
cd "test dir" 或者 cd 'test dir'

6.把上个命令的参数作为cd参数使用 !$表示
ls -i /etc
cd !$

7.使用相对路径切换目录
cd testdir

8.使用绝对路径切换目录
cd /home/testdir

9.使用通配符切换目录(匹配到多个情况下默认选择第一个进入)
cd t*

10.进入上次工作目录
cd ~

—mkdir

参考 https://blog.csdn.net/dengjin20104042056/article/details/95595345
操作

  1. 创建一个空目录
  2. 创建权限为755的目录
  3. 递归创建多个目录
  4. 创建目录的过程中显示信息
  5. 创建项目的目录结构
  6. 如果没有权限,则不能创建目录
  7. 批量创建目录
  8. 创建存在或不存在的目录

命令

1.创建一个空目录
mkdir testdir

2.创建权限为755的目录
mkdir -m 755

3.递归创建多个目录
mkdir -p a/b/c

4.创建目录的过程中显示信息
mkdir -p -v a/b/c

mkdir: created directory ‘a’
mkdir: created directory ‘a/b’
mkdir: created directory ‘a/b/c’


5.创建项目的目录结构
mkdir project/requests/{bin,lib,language/{en,zh},doc/{chm,pdf,word}} -v -p

project
`-- requests
    |-- bin
    |-- doc
    |   |-- chm
    |   |-- pdf
    |   `-- word
    |-- language
    |   |-- en
    |   `-- zh
    `-- lib


6.如果没有权限,则不能创建目录
mkdir /project

mkdir: cannot create directory ‘/project’: Permission denied

7.批量创建目录
mkdir html{1..9}

html1  html2  html3  html4  html5  html6  html7  html8  html9


8.创建存在或不存在的目录
mkdir -p a/b/c

—rmdir

参考 https://blog.csdn.net/dengjin20104042056/article/details/95599920
操作

  1. 删除空目录
  2. 删除多个空目录
  3. 删除指定目录及其上级目录
  4. 删除非空目录报错
  5. 删除过程中显示详细信息

命令

1.删除空目录
rmdir testdir

2.删除多个空目录
rmdir testdir1 testdir2

3.删除指定目录及其上级目录
rmdir -p a/b/c

4.删除非空目录报错
rmdir testdir

rmdir: failed to remove ‘a’: Directory not empty

5.删除过程中显示详细信息
rmdir -p -v a/b/c

—ls

参考 https://blog.csdn.net/dengjin20104042056/article/details/95664645
操作

  1. 查看当前目录下内容
  2. 查看当前目录下文件以及其属性信息
  3. 以易于阅读的格式输出文件大小
  4. 列出目录下所有文件,包括隐藏文件
  5. 显示每个文件的inode 号
  6. 显示完整的时间
  7. 递归显示子目录
  8. 列出文件并标记颜色分类
  9. 按照特殊字符对文件进行分类
  10. 按修改时间倒序列出文件和文件夹详细信息
  11. 根据修改时间排序
  12. 显示目录详细信息
  13. 打印文件的UID和GID
  14. 所有项目以逗号分隔,并填满整行行宽
  15. 显示指定文件的详细信息
  16. 对目录加上表示符号"/"
  17. 逆序排列
  18. 根据文件大小排序

命令

1.查看当前目录下内容
ls

2.查看当前目录下文件以及其属性信息
ls -l

3.以易于阅读的格式输出文件大小
ls -lh

4.列出目录下所有文件,包括隐藏文件
ls -a

5.显示每个文件的inode 号
ls -i

6.显示完整的时间
ls --full-time

7.递归显示子目录
ls -R /root

8.列出文件并标记颜色分类
ls --color=auto


9.按照特殊字符对文件进行分类
ls -F


10.按修改时间倒序列出文件和文件夹详细信息
ls -ltr

11.根据修改时间排序
ls -lt

12.显示目录详细信息
ls -ld /etc

13.打印文件的UID和GID
ls -n

14.所有项目以逗号分隔,并填满整行行宽
ls -m

15.显示指定文件的详细信息
ls -l 1.c

16.对目录加上表示符号"/"
ls -p

17.逆序排列
ls -lr

18.根据文件大小排序
ls -lS

—mv

参考 https://blog.csdn.net/dengjin20104042056/article/details/95677991
操作

  1. 重命名文件
  2. 移动文件到指定目录中
  3. 批量移动文件到指定目录中
  4. 批量移动文件到指定目录中 -t选项
  5. 覆盖前询问
  6. 覆盖前不询问
  7. 移动目录
  8. 移动当前文件夹下的所有文件到上一级目录
  9. 将上级目录的文件移动到当前目录中
  10. 创建备份文件
  11. 详细显示进行的步骤
  12. 更新选项
  13. 不覆盖已存在文件

命令

1.重命名文件
mv 1.sh 2.sh

2.移动文件到指定目录中
mv 2.sh testdir

3.批量移动文件到指定目录中
mv 1.sh 2.sh testdir

4.批量移动文件到指定目录中 -t选项
mv -t a html{1..10}

5.覆盖前询问
mv -i 1.sh testdir

6.覆盖前不询问
mv -f 1.sh testdir

7.移动目录
mv testdir1 testdir2

8.移动当前文件夹下的所有文件到上一级目录
mv * ../

9.将上级目录的文件移动到当前目录中
mv ../2.sh ./

10.创建备份文件
mv -bv 2.sh ../

11.详细显示进行的步骤
mv -v ../2.sh ./

12.更新选项(只在源文件文件比目标文件新,或目标文件不存在时才进行移动)
mv -fu 2.sh ../

13.不覆盖已存在文件(目标目录已存在文件不移动)
mv -n 2.sh ../

—cp

参考 https://blog.csdn.net/dengjin20104042056/article/details/95799663
操作

  1. 复制文件

  2. 复制一个文件到目录中

  3. 拷贝多个文件到指定目录中

  4. 递归复制目录及其子目录内的所有内容

  5. 创建文件的硬链接,而不是拷贝

  6. 只创建符号链接而不复制文件

  7. 不跟随源文件中的符号链接

  8. 总是跟随符号链接

  9. 拷贝目录,符号链接也会被拷贝

  10. 详细显示命令执行的操作

  11. 覆盖前询问(使前面的 -n 选项失效)

  12. 覆盖已存在的文件目标前将目标文件备份

  13. 只拷贝文件属性,不拷贝文件内容

  14. 强制拷贝文件

命令

1.复制文件
cp 1.sh testdir/1.sh

2.复制一个文件到目录中
cp 1.sh testdir/

3.拷贝多个文件到指定目录中
cp a b c testdir/

4.递归复制目录及其子目录内的所有内容
cp testdir1 testdir2

5.创建文件的硬链接,而不是拷贝
cp -l a aa.hlink

6.创建文件的软链接,而不是拷贝
cp -s a a.slink

7.软链接完全复制(复制时附带软链接所指的对象)
cp -P 2.sh.link1 2.sh.link2

8.软链接不完全复制(复制时不附带软链接所指的对象,成为一个文件)
cp 2.sh.link1 2.sh.link2 或者 cp -L 2.sh.link1 2.sh.link2

9.拷贝目录,软硬链接也会被拷贝
cp -r * testdir/

10.详细显示命令执行的操作
cp -v * 1.sh ../1.sh

11.覆盖前询问(默认询问,使前面的 -n 选项失效)
cp -i * testdir/

12.覆盖已存在的文件目标前将目标文件备份
cp -bv 2.sh testdir/

13.只拷贝文件属性,不拷贝文件内容
cp --attributes-only 1.sh ../2.sh

14.强制拷贝文件
cp -fv * ../

—touch

参考 https://blog.csdn.net/dengjin20104042056/article/details/95811760
操作

  1. 创建新文件
  2. 创建多个文件
  3. 更改文件全部时间属性
  4. 更新最近更改时间(Change)
  5. 更新修改时间(Modify)
  6. 改文件时间戳(Modify)
  7. 使用指定文件的时间属性(Access,Modify)替代当前时间

命令

1.创建新文件
touch file

2.创建多个文件
touch file1 file2

3.更改文件全部时间属性
stat file
  File: ‘file’
  Size: 0         	Blocks: 0          IO Block: 4096   regular empty file
Device: fd01h/64769d	Inode: 394471      Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2019-10-13 21:19:29.163105345 +0800
Modify: 2019-10-13 21:19:29.163105345 +0800
Change: 2019-10-13 21:19:29.163105345 +0800
 Birth: -
touch file
stat file
  File: ‘file’
  Size: 0         	Blocks: 0          IO Block: 4096   regular empty file
Device: fd01h/64769d	Inode: 394471      Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2019-10-13 21:22:13.054120560 +0800
Modify: 2019-10-13 21:22:13.054120560 +0800
Change: 2019-10-13 21:22:13.054120560 +0800

4.更新最近更改时间(Change)
touch -a file

5.更新修改时间(Modify)
touch -m file

6.更改文件时间戳(Modify)
touch -t 201910122122.30

7.使用指定文件的时间属性(Access,Modify)替代当前时间
touch -r b a   # 将文件b的时间属性给文件a

—rm

参考 https://blog.csdn.net/dengjin20104042056/article/details/95920149
操作

  1. 删除文件,不加任何选项
  2. 同时删除多个文件 每个文件以空格分隔
  3. 强制删除。忽略不存在的文件,不提示确认
  4. 详细显示进行的步骤
  5. 在删除前需要确认
  6. 递归删除目录及其内容
  7. 删除链接文件
  8. 删除以“-”开头的文件
  9. 自定义回收站功能

命令

1.删除文件,不加任何选项
rm a

2.同时删除多个文件 每个文件以空格分隔
rm a b

3.强制删除。忽略不存在的文件,不提示确认
rm -f a

4.详细显示进行的步骤
rm -v a b c d

5.在删除前需要确认
rm -i a

6.递归删除目录及其内容
rm -r testdir

7.删除所有指定类型文件(以c文件为例)
rm *.c

8.删除以“-”开头的文件
rm -- -file 或者 rm ./-file

9.自定义回收站功能
myrm(){ D=/tmp/$(date +%Y%m%d%H%M%S); mkdir -p $D; mv "$@" $D && echo "moved to $D ok"; }

—file

参考 https://blog.csdn.net/dengjin20104042056/article/details/95920149
操作

  1. 显示文件类型
  2. 显示文件类型,不显示文件名称
  3. 显示文件类型, 显示MIME类别,不显示文件名称
  4. 显示符号链接的文件类型
  5. 显示符号连接所指向的文件类型
  6. 查看文件中的文件名的文件类型
  7. 使用指定分隔符号替换输出文件名后的默认的":"分隔符
  8. 尝试去解读压缩文件的内容

命令

1.显示文件类型
file 1.sh

2.显示文件类型,不显示文件名称
file -b 2.py

3.显示文件类型, 显示MIME类别,不显示文件名称
file -bi 2.py

4.显示符号链接的文件类型
file a.link

5.显示符号连接所指向的文件类型
file -L a.link
>>a.link: directory

6.查看文件中的文件名的文件类型
cat a.txt
>>/home
>>/etc

file -f a.txt
>>/home: directory
>>/etc:  directory


7.使用指定分隔符号替换输出文件名后的默认的":"分隔符
file -F '--' a.txt
>>a.txt-- ASCII text

8.尝试去解读压缩文件的内容
file -z Python-3.7.0.tgz
>>Python-3.7.0.tgz: POSIX tar archive (GNU) (gzip compressed data, from Unix, last modified: Wed Jun 27 14:06:02 2018, max compression)

—cat/tac

参考 https://blog.csdn.net/dengjin20104042056/article/details/95923178#02__9
操作

  1. 查看文件的内容
  2. 查看文件的内容,并显示行数编号
  3. 查看文件的内容,并添加行数编号后输出到另外一个文件中
  4. 清空文件的内容
  5. 持续写入文件内容,碰到EOF符后结束并保存
  6. 将软盘设备制作成镜像文件
  7. 将所有的连续的多个空行替换为一个空行
  8. 将所有的连续的多个空行替换为一个空行,并且所有输出行编号
  9. 对非空输出行编号
  10. 在每行结束处显示 $
  11. 合并文件内容
  12. 创建新文件
  13. 复制文件
  14. 插入多行

命令

1.查看文件的内容
cat /etc/passwd

2.查看文件的内容,并显示行数编号
cat -n /etc/passwd

3.查看文件的内容,并添加行数编号后输出到另外一个文件中
cat -n /etc/passwd > file.txt

4.清空文件的内容
cat /dev/passwd > file.txt

5.持续写入文件内容(ctrl+c结束输入)
cat > file.txt

6.将软盘设备制作成镜像文件
cat /dev/fd0 > disk.iso

7.将所有的连续的多个空行替换为一个空行显示
cat -s file.txt

8.将所有的连续的多个空行替换为一个空行,并且所有输出行编号
cat -sn file.txt

9.对非空输出行编号
cat -b file.txt

10.在每行结束处显示 $
cat -E file.txt

11.合并文件内容(将1.txt和2.txt的内容合并到3.txt)
cat 1.txt 2.txt > 3.txt

12.创建新文件(ctrl+c结束输入)
cat > 1.sh

13.复制文件
cat file.txt > file1.txt

14.插入多行(可自定义结束符)
cat >>file.txt<< EOF

tac命令为是由最后一行到第一行反向显示,选项不变

—more

参考 https://blog.csdn.net/dengjin20104042056/article/details/95928636
操作

  1. 查看文件内容, 按下回车向下浏览
  2. 指定每屏显示行数
  3. 从文件第 NUM 行开始显示
  4. 从匹配搜索字符串 STRING 的文件位置开始显示
  5. 与管道组合使用
  6. 将多个空行压缩为一行

命令

1.查看文件内容, 按下回车向下浏览
more /etc/passwd

2.指定每屏显示行数
more -5 /etc/passwd

3.从文件第 NUM 行开始显示
more +2 /etc/passwd

4.从匹配搜索字符串 STRING 的文件位置开始显示
more +/ftp /etc/passwd #使用选项 +/STRING,从文件中查找第一个出现“Unix”字符串的行,并从该处前两行开始显示输出。

5.与管道组合使用
top | more

6.将多个空行压缩为一行
more -s file.txt

—less

参考 https://blog.csdn.net/dengjin20104042056/article/details/95930905
操作

  1. 查看文件内容
  2. 执行命令,然后分页显示
  3. 查看命令历史使用记录并通过less分页显示
  4. 浏览多个文件

命令

1.查看文件内容
less /etc/passwd

2.执行命令,然后分页显示
ps -aux | less

3.查看命令历史使用记录并通过less分页显示
history | less

4.浏览多个文件
less 1.txt 2.txt # :n - 浏览下一个文件  :p - 浏览前一个文件

—head

参考 https://blog.csdn.net/dengjin20104042056/article/details/95936835
操作

  1. 显示文件前10行
  2. 显示文件前5行
  3. 显示文件的前 K 字节的内容
  4. 显示除了文件最后k个字节以外的全部内容
  5. 显示除了文件最后 k 行以外的全部内容
  6. 显示多个文件
  7. 显示多个文件, 但是不显示标题
  8. 显示多个文件, 但是显示标题

命令

1.显示文件前10行
head /etc/passwd

2.显示文件前5行
head -n 5 /etc/passwd

3.显示文件的前 K 字节的内容
head -c k /etc/passwd

4.显示除了文件最后k个字节以外的全部内容
head -c -k /etc/passwd

5.显示除了文件最后 k 行以外的全部内容
head -n -k /etc/passwd

6.显示多个文件
head 1.txt 2.txt

7.显示多个文件, 但是不显示标题
head -q 1.txt 2.txt

8.显示多个文件, 但是显示标题
head -v 1.txt 2.txt

—tail

参考 https://blog.csdn.net/dengjin20104042056/article/details/95937014
操作

  1. 输出文件最后10行
  2. 输出最后 n 行的内容
  3. 从第n行开始显示文件的内容
  4. 输出最后n个字节的内容
  5. 显示多文件最后k行,并且不显示文件名的文件头
  6. 显示多文件最后k行,并且显示文件名的文件头
  7. 当文件增长时,动态查看文件追加的内容
  8. 组合使用

命令

1.输出文件最后10行
tail /etc/passwd

2.输出最后 n 行的内容
tail -n 5 /etc/passwd

3.从第n行开始显示文件的内容
tail -n +20 /etc/passwd

4.输出最后n个字节的内容
tail -c 5 /etc/passwd

5.显示多文件最后k行,并且不显示文件名的文件头
tail -q /etc/passwd

6.显示多文件最后k行,并且显示文件名的文件头
tail -n 15 /etc/passwd

7.当文件增长时,动态查看文件追加的内容
tail -f file.txt

8.组合使用
cat /etc/passwd | tail -n 5

—cut

参考 https://blog.csdn.net/dengjin20104042056/article/details/96114261

操作

  1. 提取每一行的第一个字符
  2. 提取每一行第 1 3 5个字符
  3. 提取每一行第 1-5 个字符
  4. 提取每一行第 1-5 个字符
  5. 提取每一行第 3个字符以后的
  6. 提取每一行的第一个汉字
  7. 提取前面两个汉字
  8. 提取前面三个汉字
  9. 提取前面四个汉字
  10. 以:分隔,将文件每一行分成若干列,显示第一列
  11. 打印除了第二个字符之外的列
  12. 定义以空格分隔,然后输出第二个字段

命令

1.提取每一行的第一个字符
cut -b 1 test.txt

2.提取每一行第 1 3 5个字符
cut -b 1,3,5 test.txt

3.提取每一行第 1-5 个字符
cut -b 1-5 test.txt

4.提取每一行第 1-5 个字符
cut -b -5 test.txt

5.提取每一行第 3个字符以后的
cut -b 3- test.txt

6.提取每一行的第一个汉字
cut -c 1 test.txt 或者 cut -nb 1 test.txt

7.提取前面两个汉字
cut -c 1,2 test.txt 或者 cut -nb 1,2 test.txt

8.提取前面三个汉字
cut -c -3 test.txt 或者 cut -nb -3 test.txt
cut -c 1-3 test.txt 或者 cut -nb 1-3 test.txt

9.提取前面四个汉字
cut -c -4 test.txt 或者 cut -nb -4 test.txt
cut -c 1-4 test.txt 或者 cut -nb 1-4 test.txt

10.以:分隔,将文件每一行分成若干列,显示第一列
cut -d : -f1 /etc/passwd

11.打印除了第一个和第二个字符之外的列
cut -c 1,2 --complement test.txt

12.定义以空格分隔,然后输出第二个字段
cut -d ' ' -f2 test.txt

—which

参考 https://blog.csdn.net/dengjin20104042056/article/details/96118987
操作

  1. 显示命令的路径
  2. 显示命令的别名
  3. 普通用户查找的情形
    root用户查找的情形
  4. 查找不到内建命令

命令

1.显示命令的路径
which bash

2.显示命令的别名
which ls

3.
普通用户查找的情形
which pwd
>>/usr/bin/pwd

root用户查找的情形
which pwd
>>/bin/pwd

4.查找不到内建命令
which type

—locate

参考 https://blog.csdn.net/dengjin20104042056/article/details/96122308
操作

  1. 查找包含某个字符串的相关文件
  2. 搜索目录下所有以 sh开头的文件
  3. 指定显示数量
  4. 匹配模式时忽略大小写区别
  5. 搜索基本正则表达式 REGEXP 来代替模式
  6. 查找最近变动的文件
  7. 查看统计信息
  8. 查看passwd统计数量
  9. update相关配置文件

命令

1.查找包含某个字符串的相关文件
locate ipconfig

2.搜索目录下所有以 sh开头的文件
locate /bin/sh

3.指定显示数量
locate -n 3 passwd

4.匹配模式时忽略大小写区别
locate -i passwd

5.搜索基本正则表达式 REGEXP 来代替模式
locate -r ^/var/lib/rpm

查找以sh结尾的文件
locate -r sh$

6.查找最近变动的文件
locate ~/file.txt

7.查看统计信息
locate -S

8.统计包含文件passwd的数量
locate -c passwd

9.update相关配置文件
vim /etc/updatedb.conf

10.更新数据库
updatedb

—find

参考
操作

  1. 列出当前目录及子目录下所有文件和文件夹
  2. 在/home目录下查找以.txt结尾的文件名
  3. 在/home目录下查找以.txt结尾的文件名,忽略大小写
  4. 当前目录及子目录下查找所有以.txt和.pdf结尾的文件
  5. 匹配文件路径或者文件
  6. 基于正则表达式匹配文件路径
  7. 基于正则表达式匹配文件路径,忽略大小写
  8. 找出当前目录下不是以.txt结尾的文件
  9. 根据类型查找对应的文件
  10. 向下最大深度限制为3
  11. 搜索出深度距离当前目录至少2个子目录的所有文件
  12. 根据文件时间戳进行搜索
  13. 根据文件大小进行匹配
  14. 删除当前目录下所有.txt文件
  15. 根据文件权限进行匹配

命令

1.列出当前目录及子目录下所有文件和文件夹
find 或者 find ./

2.在/home目录下查找以.txt结尾的文件名
find /home -name '*.txt'

3.在/home目录下查找以.txt结尾的文件名,忽略大小写
find  /home -iname '*.txt'

4.当前目录及子目录下查找所有以.txt和.pdf结尾的文件
find ./ -name '*.txt' -o -name '.*pdf'

5.匹配文件路径或者文件
find /usr -path '*local'

6.基于正则表达式匹配文件路径


7.基于正则表达式匹配文件路径,忽略大小写

8.找出当前目录下不是以.txt结尾的文件
find ./ ! -name '*.txt'

9.根据类型查找对应的文件


10.向下最大深度限制为3


11.搜索出深度距离当前目录至少2个子目录的所有文件


12.根据文件时间戳进行搜索


13.根据文件大小进行匹配


14.删除当前目录下所有.txt文件


15.根据文件权限进行匹配


信息显示

—uname

—uptime

网络管理

—ping

命令格式
在这里插入图片描述
相关操作
1.临时允许ping

[root@localhost ~]# echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_all

2.临时禁用ping

[root@localhost ~]# echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all

3.永久禁用ping
/etc/sysctl.conf 中增加一行

net.ipv4.icmp_echo_ignore_all=1          # 1表示禁止

执行 sysctl -p 立即生效
4.永久使能ping
/etc/sysctl.conf 中增加一行

net.ipv4.icmp_echo_ignore_all=0          # 0表示允许

执行 sysctl -p 立即生效

发布了82 篇原创文章 · 获赞 468 · 访问量 24万+

猜你喜欢

转载自blog.csdn.net/qq_44647926/article/details/100784352