이 질문에 대한 답을 찾을 수 없습니다. 아마도 여러분 중 한 분이 저를 도와주실 수 있을 것입니다. :)
나는 이것을 자동화하는 데 도움이 되는 몇 가지 쉘 스크립트를 작성했고 실제로 작동했습니다. 그러나 내 에 컬러 텍스트를 추가하는 것은 작동하지 않습니다 echo
. 터미널에 직접 명령을 입력하면 작동하지만 명령을 *.sh 파일에 넣으면 작동하지 않습니다.
콘텐츠foo.sh:
echo "\n\e[1;37mHello World\e[0m\n"
누구든지 문제가 무엇인지 나에게 설명해 줄 수 있습니까? 아, 그리고 그게 중요하다면 저는 zsh를 사용하고 있습니다.
미리 감사드립니다 :)
고쳐 쓰다
분명히 내용이 나오면foo.sh예:
echo $'\n\e[1;37mHello World\e[0m\n'
나는에서 답을 찾았다http://wiki.bash-hackers.org/syntax/quoting, netmonk의 답변 덕분에. 그러므로 나는 그의 대답을 정답으로 받아들이겠다. 고마워요 형 :)
답변1
파일을 저장할 때 sh
다음과 같이 모든 항목 앞에 "쉘" 선언 줄을 추가할 수 있습니다.
#!/bin/sh
# the code
셸에서 테스트할 때와 동일한 결과를 얻으려면 이 줄을 셸을 나타내는 줄로 변경하세요.
답변2
네, 이게 중요해요! echo 명령은 다를 수 있습니다. 쉘 프로그램 내에 내장된 명령이거나 별도의 독립적인 명령입니다.
이렇게 하면 zsh에서 사용하는 에코가 SH 쉘 스크립트에서 호출하는 에코와 다르다고 생각할 수 있습니다! :)
-e
스크립트에 에코를 추가 해야 합니다 !