删除文件名为“~”的文件
Deleting a file with filename "~"
在 gvim 中用 :w 保存文件时,我想我不小心输入了 :w~,它把文件名保存为 ~。
我没有多想并尝试在终端中删除它,如下所示
rm ~
这变成了灾难性的,因为它被解释为我的主目录 ~/.它从我的主目录中删除了文件。
我的问题是为什么 linux 允许 ~ 作为文件名以及如何从终端删除它。任何命令都将被视为主目录。
Unix 文件系统支持范围广泛的字符,包括符号链接。 要专门针对具有特殊字符(如 unicode 阿拉伯语、中文文本或表情符号)的文件,您需要使用引号。
在您的情况下,删除名为 ~
的文件
rm "~"
或
rm "/path/to/file/in/quotes/~"
注意: 这里我们使用引号是因为我们需要告诉shell提示这是一个文件,而不是~/
用户 $HOME 目录。
希望对您有所帮助:)
在 gvim 中用 :w 保存文件时,我想我不小心输入了 :w~,它把文件名保存为 ~。 我没有多想并尝试在终端中删除它,如下所示
rm ~
这变成了灾难性的,因为它被解释为我的主目录 ~/.它从我的主目录中删除了文件。
我的问题是为什么 linux 允许 ~ 作为文件名以及如何从终端删除它。任何命令都将被视为主目录。
Unix 文件系统支持范围广泛的字符,包括符号链接。 要专门针对具有特殊字符(如 unicode 阿拉伯语、中文文本或表情符号)的文件,您需要使用引号。
在您的情况下,删除名为 ~
rm "~"
或
rm "/path/to/file/in/quotes/~"
注意: 这里我们使用引号是因为我们需要告诉shell提示这是一个文件,而不是~/
用户 $HOME 目录。
希望对您有所帮助:)