Linux 命令搜索

目录切换

命令:cd 目录

  • cd / (切换到根目录)
  • cd /user (切换到根目录下的user目录)
  • cd ../cd .. (切换到上一级目录)
  • cd ~ (切换到home目录)
  • cd - (切换到上次访问的目录)

目录查看

命令:ls [-al]

  • ls (查看当前目录下的所有目录和文件)
  • ls -a (查看当前目录下的所有目录和文件,包括隐藏的文件)
  • ls -lll (列表查看当前目录下的所有目录和文件,列表查看,显示更多信息)
  • ls /dir (查看指定目录下的所有目录和文件,如 :ls /user
  • pwd (显示当前所在目录)

目录操作

mkdir [增]

命令:mkdir 目录

  • mkdir test (在当前目录下创建一个名为test的目录)
  • mkdir /user/test (在指定目录下创建一个名为test的目录)
  • mkdir -p /user/test1/test2/test3 (递归创建目录)

rm [删]

如操作不当或操作失误,二话不说,准备跑路

命令:rm [-rf] 目录

删除文件

  • rm 文件 (删除当前目录下的文件)
  • rm -f 文件 (删除当前目录下的文件,不询问)

删除目录

  • rm -r test (递归删除当前目录下的 test 目录)
  • rm -rf test (递归删除当前目录下的 test 目录,不询问)

全部删除

  • rm -rf * (将当前目录下的所有目录和文件全部删除)
  • rm -rf /* (自杀命令,慎用!慎用!慎用! 将根目录下的所有文件全部删除)

📢 注意:rm 不仅可以删除目录,也可以删除其他文件或压缩包,为了方便大家的记忆,无论删除任何目录或文件,都直接使用 rm -rf 目录/文件/压缩包

mv 和 cp [改]

重命名目录
命令:mv 当前目录 新目录

  • mv test test1 (将目录 test 改为 test1)
  • 📢 注意:mv 的语法不仅可以对目录进行重命名而且也可以对各种文件,压缩包等进行重命名的操作

剪切目录

命令:mv 目录名称 目录的新位置

  • mv /user/temp/test /user (将 /user/temp 目录下的 test 目录剪切到 /user 目录下面)
  • 📢 注意:mv 语法不仅可以对目录进行剪切操作,对文件和压缩包等都可执行剪切操作

拷贝目录

命令:cp -r 目录名称 目录拷贝的目标位置 (-r 表示递归)

  • cp /user/temp/test /user (将 /user/temp 目录下的 test 目录复制到 /user 目录下面)
    cp 命令不仅可以拷贝目录还可以拷贝文件,压缩包等,拷贝文件和压缩包时不用写 -r 递归

find [查]

命令:find 目录 参数 文件名称

  • find /user/temp -name 'a*' (查找 /user/temp 目录下的所有以 a 开头的目录或文件)

文件操作

touch [增]

命令:touch 文件名

  • touch test.txt (在当前目录创建一个名为 test.txt 的文件)

rm [删]

命令:rm -rf 文件名

  • rm -fr test.txt (删除当前目录下的 test.txt 文件)

vi 或 vim [改]

【vi 编辑器的 3 种模式】:基本上 vi 可以分为三种状态,分别是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode),各模式的功能区分如下:

1)命令行模式(command mode)
控制屏幕光标的移动,字符、字或行的删除,查找,移动复制某区段及进入Insert mode下,或者到 last line mode。

命令行模式下的常用命令:

  • ↑,↓ (控制光标移动)
  • dd (删除当前行)
  • /字符 (查找)
  • i,a,o (进入编辑模式)
  • :: (进入底行模式)

2)编辑模式(Insert mode)
只有在 Insert mode 下,才可以做文字输入,按「ESC」键可回到命令行模式。

编辑模式下常用命令:

  • ESC 退出编辑模式到命令行模式

3)底行模式(last line mode)
将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号……等。

底行模式下常用命令:

  • :q (退出编辑)
  • :q! (强制退出)
  • :wq (保存并退出)

打开文件
命令:vi 文件名

  • vi test.txtvim test.txt (打开当前目录下的 test.txt 文件)
  • 📢 注意:使用 vi 编辑器打开文件后,并不能编辑,因为此时处于命令模式,点击键盘 i/a/o 进入编辑模式。

编辑文件
使用 vi 编辑器打开文件后点击按键:i ,a 或者 o 即可进入编辑模式。

  • i (在光标所在字符前开始插入)
  • a (在光标所在字符后开始插入)
  • o (在光标所在行的下面另起一新行插入)

保存或者取消编辑
保存文件:
1)ESC 进入命令行模式
2):: 进入底行模式
3):wq 保存并退出

取消编辑:
1)ESC 进入命令行模式
2):: 进入底行模式
3):q! 撤销本次修改并退出编辑

[查]

文件的查看命令:cat/more/less/tail

cat:查看最后一屏

  • cat test.txt (查看 test.txt 文件,只显示最后一屏内容)

tac:与 cat 反过来

more:百分比显示

  • more test.txt (查看 test.txt 文件,可以显示百分比,回车可以向下一行,空格可以向下一页,q 可以退出查看)

less:翻页查看

  • less test.txt (查看 test.txt 文件,可以使用键盘上的 PgUp 和 PgDn 向上 和向下翻页,q 结束查看)

tail:指定行数或者动态查看

  • tail -10 test.txt (查看 test.txt 文件的后 10 行,Ctrl + C 结束)

硬链接和软连接

  • ln
    • ln test1 test2 (创建一个硬链接)
    • ln -s test1 test2 (创建一个软链接)

硬链接相当于"复制和同步",软链接相当于快捷方式

ln --help 查看帮助

权限修改

rwx:r 代表可读,w 代表可写,x 代表该文件是一个可执行文件,如果 rwx 任意位置变为 - 则代表不可读或不可写或不可执行文件。

例如:test.txt 文件的权限是 -rw-------

根据如下规则拆分:- rw- --- ---

第一位:- 表示文件,d 表示文件夹
第一段(3位):表示拥有者的权限
第二段(3位):表示拥有者所在的组,组员的权限
第三段(3位):表示其他用户权限

文字设定法

命令:chmod [who] [+ | - | =] [mode] 文件名

命令中各选项的含义

  • 操作对象who可是下述字母中的任一个或者它们的组合:

    • u 表示“用户(user)”,即文件或目录的所有者。
    • g 表示“同组(group)用户”,即与文件属主有相同组ID的所有用户。
    • o 表示“其他(others)用户”。
    • a 表示“所有(all)用户”。它是系统默认值。
  • 操作符号可以是:

    • +添加某个权限。
    • -取消某个权限。
    • =赋予给定权限并取消其他所有权限(如果有的话)。
  • 设置 mode 所表示的权限可用下述字母的任意组合:

    • r 可读。
    • w 可写。
    • x 可执行。
    • u 与文件属主拥有一样的权限。
    • g 与和文件属主同组的用户拥有一样的权限。
    • o 与其他用户拥有一样的权限。
  • 文件名:以空格分开的要改变权限的文件列表,支持通配符。

在一个命令行中可给出多个权限方式,其间用逗号隔开。

例如:chmod g+r,o+r test.txt (使同组和其他用户对文件 test.txt 有读权限)
例如:chmod u+x test.txt (给当前用户增加对 test.txt 的执行权限)

数字设定法

命令:chmod [mode] 文件名

我们将之前的 rwx 用数字进行替代。

0 表示没有权限,1 表示可执行权限,2 表示可写权限,4 表示可读权限。数字之和,即为该文件的权限。

使用文字的方式,有三组文字,数字即为 3 组数字之和

例如:chmod 644 test.txt
文件属主具有读,写权限,因为 6=4+2,文件组具有读权限,其他用户具有读权限。