/usr/local/share/.. /usr/local/src/.. 使用 Linux 命令 mkdir
我们来快速地看一看 mkdir 命令,它可以用来创建新目录。下面的示例创建了三个新目录:tic、tac 和 toe,都在 /tmp 下: $ cd /tmp
$ mkdir tic tac toe
缺省情况下,mkdir 不会为您创建父目录;邻接的上一元素的完整路径必须存在。因此,如果您想要创建目录 won/der/ful,您将需要发出三个单独的 mkdir 命令: $ mkdir won/der/ful
mkdir: cannot create directory
`won/der/ful': No such file or directory $ mkdir won $ mkdir won/der
$ mkdir won/der/ful mkdir -p
然而,mkdir有一个很方便的-p选项,该选项告诉mkdir创建所有缺少的父目录,如下所示: $ mkdir -p easy/as/pie
总之,非常简单。要学习更多关于 mkdir 命令的知识,请输入 man mkdir 来阅读手册页。除 cd(它内置在 bash 中)之外,这几乎适用于这里所涉及的所有命令(比如 man ls)。 touch
现在,我们将要快速地看一看 cp 和 mv 命令,这些命令用来复制、重命名以及移动文件和目录。为了开始该概述,我们将首先用 touch 命令在 /tmp 中创建一个文件: $ cd /tmp $ touch copyme
如果文件存在,touch 命令将更新文件的“mtime”(请回想 ls -l 输出中的第六栏)。如果文件不存在,那么将创建一个新的空文件。现在您应该有一个大小为零的 /tmp/copyme 文件。
echo 和重定向
既然文件存在,我们来把一些数据添加到文件中。我们可以使用echo命令来完成,它带有自己参数,并且把这些参数打印到标准输出。首先,单独的 echo 命令是这样的: $ echo \\\ firstfile
带有输出重定向的同样的 echo 命令为: $ echo \\\
大于符号告诉 shell 将 echo 的输出写到名为 copyme 的文件中。如果该文件不存在,将创建这个文件;如果该文件存在,将覆盖这个文件。通过输入 ls -l,我们可以看到 copyme 文件为 10 个字节长,因为它包括 firstfile 这个词和换行符: $ ls -l copyme
-rw-r--r-- 1 root root 10 Dec 28 14:13 copyme cat 和 cp
为了在终端显示文件的内容,要使用 cat 命令:
$ cat copyme firstfile
现在,我们可以使用 cp 命令的基本调用来由原始的 copyme 文件创建 copiedme 文件: $ cp copyme copiedme
通过观察,我们发现它们确实是相互独立的文件;它们的索引节点号不同:
$ ls -i copyme copiedme 648284 copiedme 650704 copyme mv
现在,我们来用“mv”命令将“copiedme”重命名为“movedme”。其索引节点号将仍然是同一个;但是,指向该索引节点的文件名将改变。 $ mv copiedme movedme $ ls -i movedme 648284 movedme
只要目标文件和源文件驻留在同一文件系统上,被移动的文件的索引节点号就将仍然不变。在本教程系列的第 3 部分,我们将进一步看一下文件系统。
创建链接和删除文件 硬链接
当谈及目录条目和索引节点之间关系时,我们提到了链接这个术语。Linux 实际有两种链接。到此为止我们所讨论的这种链接叫硬链接。一个给定的索引节点可以有任意数目的硬链接,该索引节点一直存在于文件系统,直到所有的硬链接消失。可以使用 ln 命令来创建新的硬链接 $ cd /tmp $ touch firstlink $ ln firstlink secondlink $ ls -i firstlink secondlink 15782 firstlink 15782 secondlink
您可以看到,硬链接工作于索引节点级别,指向特殊的文件。在 Linux 系统上,硬链接有几个局限性。第一,您只能给文件建立硬链接,而不能