📜  ubuntu 的腻子 - Shell-Bash (1)

📅  最后修改于: 2023-12-03 14:48:08.294000             🧑  作者: Mango

Ubuntu 的腻子 - Shell-Bash

在 Ubuntu 上,Shell-Bash 是最流行的命令行工具之一,它为程序员和管理员提供了强大和高效的方法来管理系统和执行各种任务。本文将介绍一些 Ubuntu 上的 Shell-Bash 命令和技巧,帮助你更好地利用它。

命令行基础知识

在 Ubuntu 上打开终端后,你将看到一个带有命令提示符的窗口。命令提示符默认情况下显示了当前工作目录的名称。要运行命令,请在提示符后面输入命令,并按 Enter 键执行。

基本命令

以下是一些基本的 Shell-Bash 命令:

  • cd [directory]:切换到指定目录。
  • ls:列出当前目录下的所有文件和子目录。
  • mkdir [directory]:创建一个新目录。
  • rmdir [directory]:删除一个空目录。
  • touch [filename]:创建一个空文件或更改现有文件的访问和修改时间戳。
  • cp [source] [destination]:将源文件或目录复制到目标位置。
  • mv [source] [destination]:将源文件或目录移动到目标位置,也可作为重命名。
  • rm [filename]:删除一个文件。
管道和重定向

使用管道和重定向可以将一个命令的输出传递给另一个命令,或将命令的输入来自文件而不是键盘。

  • |:使用管道将一个命令的输出传递给另一个命令。例如,ls | grep .txt 会在当前目录下列出所有以 .txt 结尾的文件。
  • <:使用重定向将一个命令的输入来自一个文件。例如,sort < file.txt 会将 file.txt 文件中的文本进行排序。
  • >:使用重定向将一个命令的输出写入另一个文件。例如,ls > files.txt 会将当前目录下的所有文件名写入 files.txt 文件中。
通配符和变量

在命令行上,通配符和变量可以帮助你更方便地处理文件和文件名。

  • *:匹配任意数量的字符,可以用于查找文件名中的通配符。例如,ls *.txt 会列出所有以 .txt 结尾的文件。
  • ?:匹配单个字符,可以用于查找文件名中的通配符。例如,ls file?.txt 会列出名为 file1.txt、file2.txt 和 file3.txt 的文件。
  • $:将一个字符串视为变量,并使用变量的值代替它。例如,echo $HOME 会显示当前用户的主目录的路径。
高级命令和技巧

以下是一些高级的 Shell-Bash 命令和技巧,它们可以帮助你更好地利用 Shell-Bash。

历史记录

Shell-Bash 会照顾时间的概念,并默认记录你执行的命令。你可以使用历史记录来快速重新运行早期执行过的命令。

  • history:列出近期所有运行的命令。
  • !!:重新运行最近的命令。
  • !n:重新运行历史记录中第 n 条命令。例如,!20 会重新运行历史记录中的第 20 条命令。
  • !string:搜索历史记录,并重新运行最近包含指定字符串的命令。例如,!sort 会重新运行最近包含 sort 字符串的命令。
别名

你可以创建别名来简化命令行。

  • alias [name]=[command]:创建一个别名,用来简化命令。例如,alias ll='ls -l' 会创建一个名为 ll 的别名,可以代替 ls -l 命令。
  • unalias [name]:删除指定的别名。
搜索和替换

使用 grep 命令可以搜索文件中的文本,使用 sed 命令可以修改文件中的文本。

  • grep [string] [filename]:在文件中查找包含指定字符串的行。例如,grep "hello" file.txt 会在 file.txt 文件中查找包含 hello 的行。
  • sed 's/[old]/[new]/' [filename]:将文件中的所有旧字符串替换为新字符串。例如,sed 's/hello/goodbye/' file.txt 会将 file.txt 文件中的所有 hello 替换为 goodbye。
结论

Shell-Bash 是一种强大的命令行工具,可以帮助程序员和管理员更好地管理系统和执行各种任务。本文介绍了一些 Ubuntu 上 Shell-Bash 的基本命令和技巧,以及一些高级命令和技巧。掌握这些技巧可以使你更高效地使用命令行。