命令行是什么?
命令行是与计算机交互的一种方式,通过输入文本命令来告诉计算机要执行的操作。它就像是一个神奇的控制台,你可以用它来导航文件、管理文件和文件夹、运行程序等等。
 
常用命令
>
$ cat oceans.txt > continents.txt > 将左边命令的标准输出重定向到右边的文件。就像把一个文件的内容倒入另一个文件。
>>
$ cat glaciers.txt >> rivers.txt >> 将左边命令的标准输出追加到右边的文件。就像在故事书的末尾添加新的章节。
<
$ cat < lakes.txt < 将右边文件的标准输入输入到左边的程序。就像把一个文件的内容倒入一个魔法瓶子里。
|
$ cat volcanoes.txt | wc | 是一个“管道”。它将左边命令的标准输出作为标准输入传递给右边的命令。就像把一个命令的输出直接连接到另一个命令的输入。
~/.bash_profile
$ nano ~/.bash_profile ~/.bash_profile 是一个文件,用于存储环境设置。它通常被称为“bash 配置文件”。当你启动一个会话时,它会加载 bash 配置文件的内容,然后再执行命令。
alias
alias pd="pwd" alias 命令允许你为常用的命令创建键盘快捷键,或者别名。就像给一个长名字的命令取一个昵称。
cd
$ cd Desktop/ cd 接受一个目录名作为参数,并切换到该目录。就像从一个房间走到另一个房间。
$ cd jan/memory 要直接导航到一个目录,使用 cd 并将目录路径作为参数。这里,cd jan/memory/ 命令直接导航到 jan/memory 目录。
cd ..
$ cd .. 要向上移动一个目录,使用 cd ..。这里,cd .. 从 jan/memory/ 导航到 jan/。
cp
$ cp ada_lovelace.txt historical/ cp 复制文件或目录。这里,我们将文件 ada_lovelace.txt 复制到 historical/ 目录。
通配符(*)
$ cp * satire/ 通配符 * 选择当前目录中的所有文件。上面的例子将当前目录中的所有文件复制到名为 satire 的目录。还有其他类型的通配符,但它们超出了这个词汇表的范围。
$ cp m*.txt scifi/ 这里,m*.txt 选择工作目录中所有以“m”开头并以“.txt”结尾的文件,并将它们复制到 scifi/。
env
$ env env 命令代表“环境”,并返回当前用户的环境变量列表。
env | grep VARIABLE
$ env | grep PATH env | grep PATH 是一个显示单个环境变量值的命令。
export
export USER="Jane Doe" export 使变量在你当前会话启动的所有子会话中可用。这是一种让变量在程序之间持续存在的方法。
grep
$ grep "Mount" mountains.txt grep 代表“全局正则表达式打印”。它搜索文件中与模式匹配的行并返回结果。它是区分大小写的。
grep -i
$ grep -i "Mount" mountains.txt grep -i 使命令不区分大小写。
grep -R
$ grep -R Arctic /home/ccuser/workspace/geography grep -R 搜索图片搜索目录中的所有文件,并输出包含匹配结果的文件名和行。-R 代表“递归”。
grep -Rl
$ grep -Rl Arctic /home/ccuser/workspace/geography grep -Rl 搜索功能搜索目录中的所有文件,并仅输出包含匹配结果的文件名。-R 代表“递归”,l 代表“包含匹配的文件”。
HOME
$ echo $HOME HOME 变量是一个环境变量,显示主目录的路径。
ls
$ ls
2024  2025  hardware.txt ls 列出工作目录中的所有文件和目录。
ls -a
$ ls -a
.  ..  .preferences  action  drama comedy  genres.xt ls -a 列出工作目录中的所有内容,包括隐藏文件和目录。
ls -l
$ ls -l
drwxr-xr-x 5  cc  eng  4096 Jun 24 16:51  action
drwxr-xr-x 4  cc  eng  4096 Jun 24 16:51  comedy
drwxr-xr-x 6  cc  eng  4096 Jun 24 16:51  drama
-rw-r--r-- 1  cc  eng     0 Jun 24 16:51  genres.txt ls -l 以长格式列出目录中的所有内容。以下是每列的含义。
ls -t
 ls -t 按最后修改时间对文件和目录进行排序。
mkdir
$ mkdir media mkdir 接受一个目录名作为参数,然后在当前工作目录中创建一个新目录。这里我们使用 mkdir 创建了一个名为 media/ 的新目录。
mv
$ mv superman.txt superhero/ 要将文件移动到目录中,使用 mv,并将源文件作为第一个参数,目标目录作为第二个参数。这里我们将 superman.txt 移动到 superhero/。
nano
$ nano hello.txt nano 是一个命令行文本编辑器。它就像桌面文本编辑器(如 TextEdit 或 Notepad)一样工作,只是它可以从命令行访问,并且只接受键盘输入。
PATH
$ echo $PATH
/home/ccuser/.gem/ruby/2.0.0/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/sbin:/sbin:/bin PATH 是一个环境变量,存储了一系列由冒号分隔的目录。每个目录都包含命令行要执行的脚本。PATH 列出哪些目录包含脚本。
pwd
$ pwd
/home/ccuser/workspace/blog pwd 打印工作目录的名称。
rm
$ rm waterboy.txt rm 删除文件。这里我们从文件系统中删除文件 waterboy.txt。
rm -r
$ rm -r comedy rm -r 删除一个目录及其所有子目录。
sed
$ sed 's/snow/rain/' forests.txt sed 代表“流编辑器”。它接受标准输入,并根据一个表达式对其进行修改,然后将其显示为输出数据。
 在表达式 's/snow/rain/' 中:
- s: 代表“替换”。
- snow: 搜索功能搜索字符串,要查找的文本。
- rain: 替换字符串,要添加的文本。
sort
$ sort lakes.txt sort 接受一个文件名或标准输入,并按字母顺序对每一行进行排序,然后将其打印到标准输出。
standard error
 标准错误,简称为 stderr,是一个失败进程输出的错误消息。
source
source ~/.bash_profile source 激活 ~/.bash_profile 中的更改,以便在当前会话中使用。这样就不需要关闭终端并需要启动一个新会话,source 会立即在我们当前的会话中应用更改。
standard input
 标准输入,简称为 stdin,是通过键盘或输入设备输入到终端的信息。
standard output
 标准输出,简称为 stdout,是一个进程运行后输出的信息。
touch
$ touch data.txt touch 在工作目录中创建一个新文件。它接受一个文件名作为参数,然后在当前工作目录中创建一个新空文件。这里我们使用 touch 在 2025/dec/ 目录中创建了一个名为 keyboard.txt 的新文件。
如果文件已存在,touch 用于更新文件的修改时间。
uniq
$ uniq lakes.txt uniq,代表“唯一”,接受一个文件名或标准输入,并打印出每一行,删除任何完全相同的重复项。
课程推荐
希望这篇文章能帮助你更好地理解命令行命令!如果你有任何问题或需要进一步的帮助,请随时访问 编程狮 。
 小狮博客
小狮博客