bash 脚本使用 ~/ 说没有这样的文件或目录?

bash 脚本使用 ~/ 说没有这样的文件或目录?

在 bash 脚本中,当我尝试访问它时,"~/"它不起作用。

示例:touch "~/anything"结果为

touch: 无法触摸 '~/anything': 没有这样的文件或目录

有没有搞错?我可以从运行脚本的命令提示符处执行此操作。

答案1

在 Bash 中,波浪号或在双引号或单引号内时~不会扩展。/home/user

如果您需要使用引号来解释空格或特殊字符,则不要引用波浪号或正斜杠。例如:

touch ~/"that file"

touch ~/'this"quote'

您也可以只使用:

touch "$HOME/file with spaces"

答案2

引号是问题所在,如果您将引号与 ~ 一起使用,它似乎按原样使用它而不是扩展它。

相关内容