쉘에서 문자열을 교체하십시오. 오류: 잘못된 대체

쉘에서 문자열을 교체하십시오. 오류: 잘못된 대체

모든 공백을 _로 바꾸려고합니다. 다음 코드를 사용했습니다.

FONT="DejaVu Sans Mono"
FONT_CODE=${FONT//[ ]/_}
echo $FONT_CODE 

DejaVu_Sans_Mono를 출력으로 기대하고 있는데 다음과 같은 오류가 발생했습니다.

x.sh: 2: Bad substitution

나는 일을 하려면 무엇을 해야 할지 잘 모르겠습니다.

답변1

댓글에서 힌트를 얻은 후 문제를 해결한 방법은 다음과 같습니다. 나는 sh 대신 zsh를 사용했는데 그것은 나에게 효과적이었습니다.

먼저 zsh를 설치해야 했습니다.

sudo apt install zsh

그런 다음 터미널에서 sh 대신 zsh를 사용했습니다.

zsh x.sh

오류가 발생하지 않았으며 결과는 다음과 같습니다.

DejaVu_Sans_Mono

관련 정보