백슬래시는 echo 명령을 통해 링을 보낼 수 없습니다.

백슬래시는 echo 명령을 통해 링을 보낼 수 없습니다.

echo명령은 백래시 이스케이프를 해석하지 않습니다(-e 옵션 추가). 예를 들어 다음과 같이 벨소리를 울리고 싶습니다. echo -e \a

인쇄하는 대신: a 또는 \a

통역을 켜는 방법이나 수정하는 방법은 무엇입니까?

답변1

호출하기 전에 쉘은 echo -e \a매개변수에서 이전 매개변수를 제거합니다. 그것은 정확히 동일합니다\aechoecho

echo -e 'a'

백슬래시 다음에 가 오는 형태로 수신되려면 echo그대로 전달되어야 합니다. 이는 다음에 의해 수행됩니다.\a\echo

echo -e '\a'

또는

echo -e \\a

이것이 실제로 들리거나 보이는 벨소리를 생성하는 경우 다른 설정에 따라 달라질 수 있습니다.

답변2

\쉘 해석으로부터 보호가 필요합니다 . 이 시도:

echo -e '\a'

또는

echo -e \\a

관련 정보