使用终端无外乎要进行增删改查。

1、查;查看文件或目录

  1. #查看当前目录绝对路径
  2. pwd
  3. #查看当前目录内容
  4. ls
  5. #查看执行目录内容
  6. ls 路径
  7. #查看文件内容
  8. cat:查看所有文件内容。遇大文件不友好
  9. less:查看少量内容,一个可翻页的内容区。
  10. head:默认查看前10行内容,使用 "-n 参数" 可查看指定参数条目内容。如:"head 路径 -n 15"

2、增;创建文件或目录

创建文件:

  1. # 创建一个名为 1.txt 的空文件
  2. touch 1.txt
  3. # 创建一个名为 2.txt 的文件并写入内容
  4. echo hello world > 2.txt
  5. # 创建一个名为 3.txt 的文件并写入含有转义字符的内容
  6. echo -e "hello/nworld" > 3.txt
  7. # ">" 符号会清空源文件内容后写入新内容
  8. # 需要在原文件内容后追加新内容需要使用 ">>" 操作符
  9. echo nihao >> 3.txt
  10. # 创建多个文件
  11. touch 4.txt 5.txt

创建目录:

  1. # 创建目录 a
  2. mkdir a
  3. # 创建多层级目录
  4. mkdir -p a/b/c/d
  5. # 创建多个层级目录
  6. mkdir -p a/b/c a/b/d

3、改;复制、修改、移动文件或目录

复制:

  1. # 复制文件,将 a.txt 内容复制到 b.txt
  2. # 没有 b.txt 则创建后复制,有则内容覆盖。
  3. cp a.txt b.txt
  4. # 复制目录,将 a 目录复制为 b 目录
  5. # 在当前目录下将 a 目录复制为 b目录
  6. cp -r a b

修改:

  • 先设置文件的默认打开程序。
  • 使用 “start” 或 “open” 命令让windows选择默认程序打开文件。
  • 用 vs code 可以通过 code 命令打开文件进行编辑
  • 清空文件内容
  1. # 利用 echo '>' 直接覆盖的特性将文件内容清空
  2. echo "" > 1.txt

移动文件

  1. # 移动 1.txt 到 a 文件夹下
  2. mv 1.txt a/
  3. # 修改文件名
  4. mv 1.txt 2.txt

修改文件的最后更新时间

  1. touch 1.txt

4、其他

  • 使用 “Alt+.” 可以快速复制上一条命令的命令参数
  • 使用 “echo $?” 的返回值知道上一条命令是否执行成功。0 为成功,1为失败。

综合:

  1. # 使用组合命令创建目录和文件并写入内容
  2. # $1 是可接收参数占位符,如 echo nihao ,nihao 就是传入的参数
  3. # 假使创建了一个无后缀文件且文件名为 go,它的内容如下
  4. # 创建传入参数名目录并进入目录
  5. mkdir $1
  6. cd $1
  7. # 创建 HTML 和 CSS 后缀文件
  8. touch index.html
  9. touch index.css
  10. # 向 index.html 中写入内容
  11. echo -e "<html><head><title>index</title><head></html>" > index.html

在终端中修改上述 go 文件为可执行文件并执行,即可在当前目录中得到一个目录且拥有对应文件

  1. # 修改 go 文件权限
  2. chmod -x go
  3. # 执行 go 脚本,由于使用了 $1 ,需要传入参数,这里传入 aaa
  4. ./go aaa
  5. sh go bbb

组合命令有 “ && “ 和 “ ; “

  • “&&”:上一条指令执行成功后才会执行 && 后面的命令;
  1. # 删除 1.txt 后回显"删除成功"内容
  2. rm 1.txt && echo 删除成功
  3. # 1.txt 删除成功了才有回显内容
  • “;”:不管上一条是否成功,都会执行后面的命令;
  1. # 删除 1.txt 后回显"删除成功"内容
  2. rm 1.txt ; echo 删除成功
  3. # 不管 1.txt 删除成功与否都有回显内容