命令

坦白的说,冷不丁见到那么老长的一串命令,谁都会毛骨悚然。

也许您使用过 DOS,留下这种印象:命令先放一边,光是正确的输入目录、文件名都够瞧的。而且 DOS 不区分大小写,要是像 Linux 一样区分大小写,那多恐怖啊!!!

其实 Linux 命令行具有补全功能,非常实用。假设有这样一个命令:

  1. command path/file

如果只有一个以 c 起始的命令,键入 c ,再按一次 tab 键,系统将自动补全该命令余下的部分。 只要 c tab 两次按键,就可以完成 command 的输入。

现在我们来了解命令的语法结构,这一部分相当重要,您可得看仔细。

我们知道,任何语言都有特定的语法结构,以我们的中文为例:

  1. 我们郑重地推荐您Linux

这个句子的语法尽管简单,却是大部分的命令行采用的句型。让我们看一下,这个句子里都有些什么:

1

主语,Linux 命令的执行者当然是用户,所以主语一概省略。

3

一个动词,作为谓语而存在。Linux 命令中,这一部分是必须的。这一部分也是不同命令之间最根本的区别方式,所以它通常作为命令名,写在最前面。键入 date 命令,您可以查看当前的时间日期。

2

状语,用来修饰谓语。与之相对应,Linux 命令可以使用选项来精细调节程序的行为。为了与命令的操作对象相区别,选项前通常要加 - 或者 — 符号。原则上,在命令名之后,选项的位置可以随意,但是为了养成一个良好的习惯,我们建议您在命令名后直接跟选项。

4

这两个部分都是宾语,它们是命令的操作对象。大部分的命令只有一个操作对象,也有一些命令是双宾语结构的,具有一个直接宾语和一个间接宾语。

比如 拷贝 这个命令 cp (copy)[19]

分隔符. 我们的汉语是象形文字,没有分隔符。但是所有的拼音文字中都用空格作为分隔符,来分隔单词。Linux 命令中同样使用空格作分隔符。

上面的那句话,翻译成 Linux 的命令,应该是这个样子的:

  1. 推荐 --郑重的 Linux

1

(按照传统,“-”后跟选项缩写,“—”后跟选项全称。不过也有例外)

哈,Linux 的命令也蛮简单吧?


[19] cp a b 表示把文件 a 拷贝为文件 b
cp a /home表示把当前目录下的 a 文件,拷贝到 /home 目录下。(命令的不同部分使用空格分隔,连续的空格视为一个空格)