如何将输出重定向到名称中有斜杠的文件

如何将输出重定向到名称中有斜杠的文件

我想创建一个名为的文件./https://www.example.com,但是以下操作不起作用:

[ ~]$ URL="https://www.example.com"
[ ~]$ echo "Hello!" >"$URL"
bash: https://www.example.com: No such file or directory

我怎样才能告诉 bash 我想要一个带有斜杠的文件名,并且我并不是试图查看不同的(不存在的)目录?

答案1

这不会使 URL 成为文件,而是使其成为变量(通过赋值):

$ URL="https://www.example.com"

http://tldp.org/LDP/abs/html/varassignment.html

你能详细解释一下你正在尝试做什么吗?

答案2

我认为您将重新映射某些特殊字符,因为“/”不能出现在有效的 POSIX 文件名中。

尝试这个:

FILENAME="$(echo "$URL" | tr '//:?+' '_')"
echo "Hello!" >"$FILENAME"

相关内容