Bash에서 문자열의 공백을 '\'로 바꾸는 방법

Bash에서 문자열의 공백을 '\'로 바꾸는 방법

websitecat나는 이름에 공백이 있는 폴더 안에 있는 (사용하여) 이름의 파일 내용을 인쇄하는 bash 스크립트를 작성 중입니다 folder 1. 하지만 bash가 올바른 경로를 얻을 수는 없습니다. 항상 폴더 이름의 첫 번째 단어만 사용하므로 공백 cat folder/websitecat 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

관련 정보