如何在bash中用'\'替换字符串中的空格

如何在bash中用'\'替换字符串中的空格

website我正在编写一个 bash 脚本,该脚本打印名为(using )的文件的内容,cat该文件位于名称中带有空格的文件夹内,例如folder 1。但我无法使 bash 获得正确的路径,它总是只使用文件夹名称中的第一个单词,所以cat folder/website而不是cat folder 1/website.所以我想用 替换 空格\。我尝试使用sedtr,但它们不起作用。

这是我的代码:

function get-website() {
    DIR="$1"
    website="$(cat "main/apps/$DIR/website")"
}

我尝试的大部分内容都在这里:使用 bash 将字符串中的字符 X 替换为字符 Y

提前致谢!

答案1

您必须传递引用的函数目录名称。

$ type foo
foo is a function
foo () 
{ 
    dir="${1}";
    cat "${dir}/test"
}
$ foo "folder 1"
foobar
$ foo folder 1
cat: folder/test: No such file or directory

相关内容