破折号(-)在Linux和其他操作系统中扮演着重要的角色。命令使用它来指定选项和参数。如果我们有提供dash的文件,这个流行的用例可能会产生问题。Linux命令通常需要显式操作来处理以破折号开头的文件名。
创建文件名以破折号开头
我们将首先创建一个以破折号开头的文件 -
. 我们可以使用不同的命令,比如 touch
, cat
等等。我们将使用 touch
命令创建一个空文件。有一个特别的论点 --
与文件名一起使用的双破折号以 dash
. 我们将在文件名之前提供双破折号参数。在本例中,我们将使用文件名 -datafile
.
$ touch -- -datafile

列表文件名以破折号开头
我们还可以列出以 dash
. 我们将使用 --
选项,以便在文件名中使用破折号。我们将使用 ls
命令 -*
它指定文件以破折号开头。
$ ls -- -*

删除以破折号开头的文件名
现在我认为这部分是最重要的部分。我们通常要删除以破折号开头的文件名。但我们不能也可以像这样犯错 invalid option
等。
$ rm -datafile

我们需要指定双破折号以删除以破折号开头的文件名。在本例中,我们将删除名为 -datafile
.
$ rm -- -datafile
写入文件名以破折号开头
我们可以写以破折号开头的文件名。我们将使用 echo
命令并将数据重定向到文件中。在这个例子中,我们将写 this is some data
放入名为 -datafile
.
$ echo "this is some data" > -datafile

读取文件名以破折号开头
正如我们在前面的示例中看到的,我们可以从以破折号开头的文件中读取数据。我们将使用 cat
指挥和提供 --
双破折号选项再次像前面的例子。我们将读取名为 -datafile
$ cat -- -datafile

相关文章: Linux rm命令教程及示例