ToB企服应用市场:ToB评测及商务社交产业平台

标题: Linux快速入门-Linux的常用命令 [打印本页]

作者: 杀鸡焉用牛刀    时间: 4 天前
标题: Linux快速入门-Linux的常用命令
1. Linux的终端与工作区

1.1 终端概述

Linux操作体系通常提供多个终端,用户可以在这些终端之间切换,以实现多使命处理。常见的终端分别如下:

1.2 切换终端


这种终端管理方式有助于在没有图形界面的情况下进行体系管理,大概在资源受限的情况下实行一些体系使命。

2. Shell语言解释器

2.1 Shell概述

Shell是用户与Linux体系之间的命令语言解释器,主要用于实行命令并与操作体系内核交互。最常见的Shell是Bash(Bourne Again Shell),它具有以下特性:

这些特性让用户能更高效地与体系交互,实行复杂的命令使命。

3. 用户登录与身份切换

3.1 su 命令

su(Switch User)命令用于切换到指定的用户账户,特殊是切换到root账户,以获取更高的权限。其根本格式为:
  1. su [-lm] [-c command] username
复制代码

3.2 sudo 命令

sudo(SuperUser Do)命令允许平凡用户在输入自己密码后,以root权限实行命令,而不必要知道root账户的密码。sudo可以增加安全性并限制root权限的利用。格式为:
  1. sudo [-u user] command
复制代码

与su差别,sudo命令仅授予用户在特定情况下实行特权命令的权限,淘汰了滥用root权限的风险。

4. 文件、目录操作命令

4.1 pwd
命令


pwd
(Print Working Directory)命令用于表现当前工作目录的绝对路径。常用格式:
  1. pwd
复制代码

4.2 cd 命令

cd(Change Directory)命令用于更改当前工作目录。常见用法包罗:

4.3 ls 命令

ls(List)命令用于列出目录中的文件和子目录。常用选项包罗:

4.3.1 ls 指令叠加利用


4.4 mkdir 命令

mkdir(Make Directory)命令用于创建目录。常用选项包罗:

4.5 rmdir 命令

rmdir(Remove Directory)命令用于删除空目录。常用选项包罗:

4.6 cp 命令

cp(Copy)命令用于复制文件或目录。常用选项包罗:

4.7 rm 命令

rm(Remove)命令用于删除文件或目录。常用选项包罗:

4.8 mv 命令

mv(Move)命令用于移动或重定名文件。常用选项包罗:

4.9 cat 命令

cat(Concatenate)命令用于表现文件内容、创建文件或合并多个文件。常用选项包罗:

4.10 more 和 less 命令

这两个命令用于分页表现文件内容。

4.11 head 和 tail 命令


4.12 touch 命令

touch 命令用于修改文件的时间戳(访问时间和修改时间),大概创建新的空文件。常用选项包罗:

4.13 ln 命令

ln(Link)命令用于创建硬链接或符号链接。常用选项包罗:

4.13.1 硬链接(Hard Link)

硬链接是指多个文件名指向同一个 inode(文件内容和元数据的集合)。删除一个硬链接不会删除文件内容,除非所有指向该 inode 的链接都被删除。
根本用法:
  1. 命令格式
  2. ln <源文件> <目标链接>
  3. 示例:
  4. ln file1.txt file2.txt
  5. 这条命令会创建一个名为 file2.txt 的硬链接,它指向 file1.txt 文件的同一个内容。
复制代码
  注意:
硬链接不能跨文件体系(即不能链接到差别的磁盘分区)。
硬链接无法创建对目录的链接(除非利用超等用户权限)。
  
4.13.2 符号链接(Symbolic Link / Symlink)

符号链接是一个指向另一个文件或目录的快捷方式。它类似于 Windows 中的快捷方式。符号链接可以跨文件体系,并且可以创建对目录的链接。
  1. 命令格式:
  2. ln -s <源文件> <目标链接>
  3. 示例:
  4. ln -s /path/to/file1.txt /path/to/symlink.txt
  5. 这条命令会创建一个名为 symlink.txt 的符号链接,它指向 /path/to/file1.txt。
  6. 查看符号链接: 使用 ls -l 命令查看符号链接的详情。符号链接通常会显示目标文件,例如:
  7. ls -l symlink.txt
  8. 输出:
  9. lrwxrwxrwx 1 user user 20 Oct  1 10:00 symlink.txt -> /path/to/file1.txt
  10. 其中,l 表示这是一个符号链接,-> /path/to/file1.txt 表示符号链接指向的目标。
  11. 删除符号链接: 删除符号链接不会影响原文件内容,只是删除链接本身。
  12. rm symlink.txt
复制代码
5. 信息表现命令

5.1 grep 命令

  1. grep 命令的基本语法:
  2. grep [选项] '模式' 文件
  3. 模式:是要搜索的文本或正则表达式。
  4. 文件:指定要搜索的文件名。
  5. 常见的 grep 命令用法:
  6. 基本用法:查找文本中的模式
  7. grep 'pattern' file.txt
  8. 该命令会在 file.txt 文件中查找包含 "pattern" 的行,并将匹配的行输出。
  9. 示例:
  10. grep 'hello' file.txt
  11. 这会列出 file.txt 中所有包含 "hello" 的行。
  12. 忽略大小写(-i 选项) -i 选项使 grep 在搜索时忽略大小写。
  13. grep -i 'pattern' file.txt
  14. 示例:
  15. grep -i 'hello' file.txt
  16. 这个命令会匹配 hello、Hello、HELLO 等。
  17. 显示行号(-n 选项) -n 选项让 grep 在输出时显示匹配行的行号。
  18. grep -n 'pattern' file.txt
  19. 示例:
  20. grep -n 'hello' file.txt
  21. 输出类似:
  22. 2:hello world
  23. 5:Hello there
  24. 显示不匹配的行(-v 选项) -v 选项会显示不匹配给定模式的行。
  25. grep -v 'pattern' file.txt
  26. 示例:
  27. grep -v 'hello' file.txt
  28. 这个命令会显示 file.txt 中所有不包含 "hello" 的行。
  29. 匹配整个单词(-w 选项) -w 选项确保匹配的是完整的单词。
  30. grep -w 'pattern' file.txt
  31. 示例:
  32. grep -w 'hello' file.txt
  33. 这个命令只会匹配包含 "hello" 作为单独单词的行,而不会匹配 "helloworld" 或 "myhello"。
  34. 递归查找(-r 或 -R 选项) -r 或 -R 选项使 grep 在指定目录及其子目录中递归查找。
  35. grep -r 'pattern' /path/to/directory/
  36. 示例:
  37. grep -r 'hello' /home/user/
  38. 这个命令会递归查找 /home/user/ 目录及其子目录中的所有文件,列出包含 "hello" 的行。
  39. 显示匹配的文件名(-l 选项) -l 选项只显示包含模式的文件名,而不显示匹配的行内容。
  40. grep -l 'pattern' *.txt
  41. 示例:
  42. grep -l 'hello' *.txt
  43. 这个命令会列出当前目录下所有包含 "hello" 的 .txt 文件的文件名。
  44. 显示匹配的行数(-c 选项) -c 选项让 grep 输出匹配模式的行数,而不是显示匹配的行。
  45. grep -c 'pattern' file.txt
  46. 示例:
  47. grep -c 'hello' file.txt
  48. 这个命令会输出 file.txt 中包含 "hello" 的行数。
  49. 显示匹配前后的上下文(-B, -A, -C 选项)
  50. -B N:显示匹配行之前的 N 行。
  51. -A N:显示匹配行之后的 N 行。
  52. -C N:显示匹配行之前和之后的 N 行(上下文行)。
  53. 示例:
  54. grep -B 2 'hello' file.txt
  55. 这个命令会显示所有包含 "hello" 的行及其之前的 2 行内容。
  56. grep -A 3 'hello' file.txt
  57. 这个命令会显示所有包含 "hello" 的行及其之后的 3 行内容。
  58. grep -C 2 'hello' file.txt
  59. 这个命令会显示所有包含 "hello" 的行及其前后各 2 行内容。
  60. 使用正则表达式(-E 选项) grep 默认使用基本正则表达式。如果你需要使用扩展正则表达式(如 +、?、{} 等),可以使用 -E 选项,或者使用 egrep(egrep 是 grep -E 的简写)。
  61. 示例:
  62. grep -E 'he+llo' file.txt
  63. 这个命令会匹配 hello、heello、heeeello 等字符串。
  64. 结合管道使用 grep
  65. grep 通常与其他命令结合使用,通过管道 (|) 将其他命令的输出传递给 grep 进行筛选。
  66. 示例:
  67. ps aux | grep 'nginx'
  68. 这个命令会列出所有包含 "nginx" 的进程信息。
复制代码
5.2 file 命令

file 命令的根本语法:
file [选项] 文件名
文件名:要检测类型的文件或目录。
选项:可选,用于控制命令的举动。
常见用法和示例:
查看单个文件的类型:
  1. file example.txt
复制代码
输出示例:
  1. example.txt: ASCII text
复制代码
这表示 example.txt 文件是一个 ASCII 文本文件。
查看二进制文件的类型:
  1. file example.bin
复制代码
输出示例:
  1. example.bin: data
复制代码
这表示 example.bin 文件是一个二进制数据文件。file 会根据文件的内容尝试辨认类型。
查看一个图像文件的类型:
  1. file example.jpg
复制代码
输出示例:
  1. example.jpg: JPEG image data, EXIF standard 2.21
复制代码
这表示 example.jpg 是一个 JPEG 图像文件,并且包罗 EXIF 信息。
查看可实行文件的类型:
  1. file example.out
复制代码
输出示例:
  1. example.out: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 4.15.0, not stripped
复制代码
这表示 example.out 是一个 64 位 ELF 可实行文件。
查看多个文件的类型:
  1. file example1.txt example2.jpg example3.bin
复制代码
输出示例:
  1. example1.txt: ASCII text
  2. example2.jpg: JPEG image data, EXIF standard 2.21
  3. example3.bin: data
复制代码
这表示 file 可以一次性检测多个文件,并表现每个文件的类型。
查看文件类型并输出详细信息(-i 选项): -i 选项表现文件的 MIME 类型,这对于确定文件的详细格式(如文本编码、图像格式等)非常有用。
  1. file -i example.txt
复制代码
输出示例:
  1. example.txt: text/plain; charset=us-ascii
复制代码
这表示 example.txt 是一个平凡文本文件,字符集为 US-ASCII。
查看文件类型并输出文件的编码(-b 选项): -b 选项用于省略 file 命令的文件名输出,只表现文件的类型信息。
  1. file -b example.txt
复制代码
输出示例:
  1. ASCII text
复制代码
这表示 example.txt 是一个 ASCII 文本文件,并且仅输出类型信息而不表现文件名。
查看文件是否是压缩文件: 如果你不确定文件是否被压缩,可以利用 file 命令查看:
  1. file example.tar.gz
复制代码
输出示例:
  1. example.tar.gz: gzip compressed data, from Unix, last modified: Mon May 10 10:21:33 2021
复制代码
这表示 example.tar.gz 是一个 GZIP 压缩文件。
查看文件的 MIME 类型(-m 选项): -m 选项可以让你指定一个自界说的魔法文件来剖析文件类型(通常不常用)。
  1. file -m /usr/share/file/magic example.txt
复制代码
查看一个目录中所有文件的类型(递归查抄): 利用 find 和 file 配合,可以查看一个目录中所有文件的类型:
  1. find /path/to/dir -type f -exec file {} \;
复制代码
这条命令会递归地查看 /path/to/dir 目录下的所有文件并表现它们的类型。
5.3 find 命令

find 是一个强盛的命令,用于在文件体系中查找符合条件的文件或目录。它通过递归搜刮指定目录及其子目录中的文件,并根据用户指定的条件(如文件名、修改时间、大小等)进行过滤。
find 命令的根本语法:

  1. find [路径] [条件] [操作]
复制代码

常见用法和示例:

5.4 locate 命令

locate 是一个非常快速的文件查找工具,它通过查询一个预先构建的数据库来查找文件,而不是实时遍历文件体系。因此,locate 命令的查找速度非常快,但前提是数据库必须是最新的。默认情况下,locate 利用的数据库是由 updatedb 命令定期更新的。
locate 命令的根本语法:

  1. locate [选项] 查找模式
复制代码

常见用法和示例:

locate 与 find 的比较:



免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4