如何在 Linux 中创建文件:Echo、Touch、Tee 和 Cat 命令
文件是任何操作系统中最重要的对象之一,Linux也不例外。文件提供了一种以持久方式存储数据的可靠方法。
Linux 使用纯文本文件来存储重要配置。例如,/etc/hosts文件存储主机名的静态表查找,/etc/crontab文件包含cron 守护程序的指令,等等。
当然,我们可以使用图形工具来创建文件。但是,使用命令行界面也可以实现相同的目的。在本指南中,我们将讨论在 Linux 中创建文件的各种方法。
1. 使用 > 重定向运算符创建一个空文件
在Linux中,重定向运算符(>)
用于将命令的输出重定向到文件,而不是显示在终端上。
(>)
如果文件不存在,则可以使用相同的操作符来创建文件。但是,如果文件已经存在,则它将清空。因此,使用重定向操作符时应非常小心。
$ > example.txt $ head example.txt
在上面的例子中,我们可以看到head 命令没有显示任何输出,因为文件是空的。
2. 使用 > 重定向运算符创建文件并写入内容
有时,我们想快速创建一个非空文件。在这种情况下,您可以使用输出重定向运算符创建一个文件,并使用echo 命令(>)
将内容写入其中,如下所示。
$ echo "Example.com is a popular Linux blog" > example.txt $ head example.txt
值得注意的是,在此示例中,我们使用了echo命令来创建文件。但是,我们也可以重定向其他 Linux 命令的输出来创建文件。
另外,值得注意的是,>
重定向运算符用于覆盖已经存在的文件的内容,如果操作不当,会导致数据丢失。
在这种情况下,我们可以使用>>
重定向运算符,将内容附加到现有文件。
$ echo "Example.com #1 Linux blog" > example.txt $ head example.txt
在上面的输出中,我们可以看到新行附加在文件末尾。
值得注意的是,与重定向操作符一样,如果文件不存在,追加操作符也会创建一个空文件。
3.使用 touch 命令创建文件
创建文件的另一种方法是使用touch 命令,这是创建空文件最安全的方法,因为它不会覆盖现有文件。相反,它只会更新现有文件的时间戳(访问时间和修改时间)。
$ touch example.txt
4.使用 tee 命令创建文件
与重定向运算符类似,我们也可以使用tee 命令来创建文件。tee 命令将命令的输出写入标准输出流以及文件。
例如,要创建一个名为“ example.txt ”的文件,请使用tee 命令,该命令将准备好接受输入。
$ tee example.txt
现在键入或粘贴您想要写入文件的内容,然后按Enter并关闭Ctrl + C
输入窗口,如图所示。
如果要使用 tee 命令覆盖文件内容,可以使用以下命令:
$ echo "Overwrite file using the tee command" | tee example.txt $ head example.txt
在这个例子中,我们可以观察到tee命令覆盖了在之前的例子中创建和更新的example.txt文件的内容。
要将内容附加到现有文件,请使用tee-a
命令的选项,该选项允许我们将数据附加到现有文件的末尾。
$ echo "Append data using the tee command" | tee -a example.txt
5.使用 cat 命令创建文件
我们可以使用cat 命令和重定向运算符的组合来创建文件。例如,如果文件不存在,则以下命令会创建一个新文件。
$ cat > example.txt
这里,终端无限期地等待用户输入。我们必须Ctrl + D
在输入所需文本后按下以将内容保存到文件中:
这种方法的主要优点是它允许我们以交互方式创建多行文件。就像重定向运算符一样,我们必须非常小心地使用此方法,因为它会覆盖现有文件。
类似地,我们可以使用cat 命令和 append 运算符的组合将内容附加到现有文件的末尾。
$ cat >> example.txt
就像前面的例子一样,我们必须Ctrl + D
在输入所需文本后按将内容附加到文件。
结论
在本指南中,我们讨论了如何使用 Linux 命令行界面创建文件。Linux 初学者可以使用其中一种方法从终端创建文件。
你知道在 Linux 中从终端创建文件的其他方法吗?请在下面的评论中告诉我们你的看法。