正确转义包含 shell 脚本中使用的特殊字符的字符串变量?

正确转义包含 shell 脚本中使用的特殊字符的字符串变量?

我觉得问这么简单的问题很愚蠢,但我绝对坚持这个问题。我到处搜索,尝试了几种方法来转义或正确引用该变量,但无论怎样,当我在 shell 脚本中运行它时,我都会收到以下错误:stat: cannot statx 'This is an odd | filename | (name).m4a' : No such file or directory 该文件存在于正在运行的目录中。

#!/bin/bash

FILENAME="This is an odd | filename | (name).m4a"
FILESIZE=$(stat "%s" "$FILENAME")

echo "Size of $FILENAME = $FILESIZE bytes."

当我在命令行上运行它时,它工作得很好:

$ stat "%s" 'This is an odd | filename | (name).m4a'

相关内容