Linux 常用指令的使用

文章目录

  • 1. 基础命令
    • 1)ls
    • 2)pwd
    • 3)cd
    • 4)touch
    • 5)cat
    • 6)mkdir
    • 7)rm
    • 8)cp
    • 9)mv
    • 10)more
    • 11)less
    • 12)head
    • 13)tail
    • 14)vim
    • 15)grep
    • 16)ps
    • 17)netstat
  • 2. 权限命令
    • 1)用户操作
    • 2)用户分组
    • 3)文件权限表示
    • 4)文件权限修改

1. 基础命令

1)ls

功能: 对于目录,列出该目录下的所有子目录和文件,对于文件,列出文件名以及其他详细信息

常用选项:

  • -a:列出目录下的所有文件和目录,包括以 . 开头的隐藏文件
  • -A:列出目录下的文件和目录,包括以 . 开头的隐藏文件,但不包括本目录和父目录
  • -l:列出文件和目录的详细信息
  • -R:列出目录下的所有文件和目录以及所有子目录下的文件和目录(递归搜索)
  • -r:列出文件和目录,并反向排序
  • -t:列出文件和目录,并以时间排序
  • -F:列出文件和目录,目录后面加上 /

2)pwd

功能: 显示当前所在的目录

3)cd

功能: 改变工作目录,将当前工作目录改变到指定目录下

用法: cd 目录名

举例:

cd … :返回上级目录

cd ~:返回根目录

cd -:返回最近访问的目录

4)touch

功能: 更改目录或文件的时间日期,如果目录或者文件不存在就新建一个

用法: touch [选项] 文件名

不加选项直接使用,若文件存在则将时间日期改为当前时间

常用选项:

  • -c:文件不存在,不会新建
  • -t:修改文件的属性时间为指定时间,如:touch -t 202305151631 a.txt,将 a.txt 的时间修改为2023年05月15日 16:31

5)cat

功能: 输出文件中的内容

常用选项:

  • -n:将文件中的内容带上行号输出

    Linux 常用指令的使用_第1张图片

  • -b:将文件中的内容带上行号输出(空行不带)

    Linux 常用指令的使用_第2张图片

  • -s:将文件中的连续两个空行输出为一行
    Linux 常用指令的使用_第3张图片

特殊用法:

  • 复制文件内容:cat [选项] log.txt > log.log

    上面的命令意思是:将 log.txt 中的内容输出到 log.log 中,也可添加选项来对内容添加序号或者合并空行

  • 复制多个文件到一个文件:cat [选项] a.txt b.txt c.txt >> d.txt

    上面的命令意思是:将 a.txt、b.txt、c.txt 三个文件中的内容输出到 d.txt 中,也可添加选项来对内容添加序号或者合并空行

6)mkdir

功能: 创建目录

常用选项:

  • -p:确保目录存在,不存在则创建一个,常用来创建多级目录

示例:

# 创建名为 test 的目录
mkdir test

# test/test1/test2 三级目录,若某个目录不存在就会创建
mkdir -p test/test1/test2

7)rm

功能: 删除一个目录或者文件(删除目录时必须添加 -r 选项

常用选项:

  • -i:删除前逐一确认,输入 y 确认删除

    请添加图片描述

  • -f:删除前无需逐一确认,直接删除

  • -r:删除目录及目录下所有的子目录和文件

8)cp

功能: 复制文件或者目录

语法: cp [选项] [源目录或文件] [目的目录或文件]

常用选项:

  • -i:当目的目录或者文件存在时,提示是否覆盖

请添加图片描述

  • -f:当目的目录或者文件存在时,直接覆盖不提示

  • -p:将源目录或者文件的时间等属性一并复制

  • -r:递归复制源目录下的所有文件和子目录

9)mv

语法: mv [选项] [源文件或目录] [目标文件或目录]

功能: 为文件或目录重命名、或将文件或目录移动到指定位置

常用选项:

  • -i:当目标文件或目录存在时,提示是否覆盖
  • -b:当目标文件或目录存在时,在覆盖之前,会为其创建一个备份
  • -f:当目标文件或目录存在时,不提示直接覆盖
  • -n:当目标文件或目录存在时,不允许覆盖

mv 命令执行时,不同参数类型的不同结果:

格式 结果
mv src_file(文件) dest_file(文件) 将源文件名 src_file 更改为 目标文件名 dest_file
mv src_file(文件) dest_file(目录) 将 src_file 文件移动到 dest_file 目录下
mv src_file(目录) dest_file(目录) 如果 dest_file 目录存在,将 src_file 目录移动到 dest_file 目录下,如果不存在,将 src_file 目录名更改为 dest_file
mv src_file(目录) dest_file(文件) 错误

10)more

功能: 打开某个文件,一页一页显示内容,文件下方会显示当前以浏览过的百分比

常用选项:

  • -num:num 是一个具体的数字,表示每一次显示的行数
  • -s:当遇到连续两行以上的空行时,替换成一行空行
  • +num:num是一个具体的数字,表示从第几行开始显示

打开文件后常用的操作命令:

  • Enter键:向下1行
  • 空格键:向下一页
  • b:向上一页
  • =:输出当前位置的行号
  • v:调用 vi 编辑器
  • q:退出文件

示例:

# 打开 testfile 文件,从第20行开始显示
more +20 testfile
# 打开 testfile 文件,每页显示20行
more -20 testfile

11)less

功能: 查看文件内容,支持搜索、支持翻页

常用选项:

  • -N:显示的内容带有行号
  • -m:显示类似 more 的百分比
  • -s:显示连续空行为一行
  • -e:文件浏览完后自动关闭

打开文件后常用的操作命令:

  • /Str:搜索字符串
  • b:向前翻一页
  • 空格:向后翻一页
  • u:向前翻半页
  • d:向后翻半页
  • Enter:向下一格
  • [pagedown]:向下一格
  • [pageup]:向上一格
  • q:退出文件

12)head

功能: head 命令用于查看文件开头部分的内容,默认查看前十行

常用选项:

  • -n<行数>:显示的行数

示例:

# 显示文件的前20行
head -n 20 testfile

13)tail

功能: 查看文件结尾部分内容,默认查看结尾后十行

常用选项:

  • -f:循环读取,会不断读取文件中的内容,文件中更新的内容会被第一时间读取到屏幕上
  • -n<行数>:显示的行数

14)vim

vim 是一个知名的文本编辑器. 前面的 cat, less, head, tail 等命令只能查看文本, 不能编辑文本. 使用 vim 就可以进行编辑了.

创建文件/打开文件:

当文件存在时打开文件,不存在时创建并打开文件

vim filename

进入插入模式:

vim 打开文件之后,还需要使用 i 键进入编辑模式,这样就可以像记事本一样对文件进行编辑了

保存退出:

对文件编辑完成之后,按 Esc 键退出编辑模式,输入 :w 回车即可保存文件,输入 :q 回车即可退出文件,输入 :wq 回车即可保存并退出文件

15)grep

语法: grep [选项] filename

功能: 用于查找文件中是否包含指定字符串,并显示对应的行

常用选项:

  • -n<行数>:显示包含指定字符串的前后多少行
  • -w:全字匹配,只有整个单词完全相同的结果才会被显示

16)ps

语法: ps [参数]

功能: 用于查看当前系统上运行的进程

常用参数:

  • aux:显示系统上所有的进程

示例:

# 显示系统上所有的进程
ps aux

# 搭配 grep 使用
# 查找端口号为80的进程
ps aux | grep -w 80

17)netstat

语法: netstat [参数]

功能: 查看系统上的网络状态

常用参数:

  • anp:查看系统上所有的网络状态

示例:

# 显示系统上所有的网络状态
netstat -anp

# 搭配 grep 使用
# 查找端口号为80的网络连接
netstat -anp | grep -w 80

2. 权限命令

1)用户操作

Linux 下有两种用户级别:超级用户(root)、普通用户

  • 超级用户:可以在 Linux 下进行任何操作,不受限制
  • 普通用户:在进行一些操作时将会受到限制
  • 超级用户命令提示符是 “ # ”,普通用户是 “ $ ”

创建用户:

  • 命令: useradd [选项] [用户名]

  • 功能: 创建一个新的普通用户

  • 选项:

    • -g [分组]:创建用户时指定用户的分组,前提是分组存在
  • 示例:

    # 创建新用户 test2,并加入 group 用户组
    useradd -g group test2
    

配置密码:

  • 命令: passwd [用户名],输入命令之后会提示输入新的密码,Linux 中输入密码时不可见,但实际已经输入了
  • 功能: 配置或修改密码

切换用户:

  • 命令: su [用户名]
  • 功能: 切换用户
  • 例如,要从 root 用户切换到普通用户 user,输入 su user,系统就会提示输入密码。从任意普通用户切换到 root 用户,只需输入 su 即可

修改用户属性:

  • 命令: usermod [选项] [用户名]

  • 常用选项:

    • -l [新用户名]:修改用户名
    • -g [新用户组]:修改用户所属用户组
  • 示例:

    # 将 test2 用户名修改为 test1
    usermod -l test2 test1
    
    # 将 test1 用户放入 root 用户组
    usermod -l root test1
    

删除用户:

  • 命令: userdel [选项] [用户名]
  • 选项:
    • -r:同时删除用户的所有工作目录,若不加只删除用户不删除工作目录

2)用户分组

创建分组:

  • 命令: groupadd [分组名]

删除分组:

  • 命令: groupdel [分组名]

修改分组名称:

  • 命令: groupmod -n [修改后的组名] [修改前的组名]

  • 示例:

    # 将 group 更名为 group1
    groupmod -n group1 group
    

3)文件权限表示

Linux 中对文件的调用权限分为三种:文件所有者的权限(Owner)、用户组的权限(Group)、其他用户的权限(Other Users)

Linux 中文件的权限用十位字符表示,具体表示如下:

第1位: 文件类型

第2-4位: 文件所有者的权限

第5-7位: 文件所有者同组用户的权限

第8-10位: 其他用户的权限

Linux 常用指令的使用_第4张图片

文件类型:

  • -:普通文件
  • d:目录文件

基本权限符号表示:

  • r:读权限,表示用户对文件或目录有读的权限
  • w:写权限,表示用户对文件有写的权限,对目录有删除或移动目录内文件的权限
  • x:执行权限,表示用户对文件有执行的权限,对目录有进入目录的权限
  • -:无权限

基本权限和权限组合的数字表示:

权限 数字表示 字母表示
0 -
只执行 1 –x
只写 2 -w-
写 + 执行 3 -wx
只读 4 r–
读 + 执行 5 r-x
读 + 写 6 rw-
读 + 写 + 执行 7 rwx

4)文件权限修改

只有文件的拥有者和 root 用户才能更改文件的权限

命令: chmod [选项] [ugoa…] [±=] [权限] [文件名]

选项:

  • -R:递归修改目录文件下所有的文件和子目录的权限

参数说明:

  • u:对文件拥有者
  • g:对文件拥有者同组用户
  • o:对其他用户
  • a:对所有用户
  • +:增加权限
  • -:减少权限
  • =:赋予权限

示例:

# 对同组用户添加读权限
chmod g+w test.txt

# 修改对 u、g、o 的权限分别为 6、6、4
chmod 664 test.txt

你可能感兴趣的:(Linux,linux,服务器)