내 가장 최근 게시물에서 :(https://stackoverflow.com/questions/15046851/linux-colorizing-text-in-files)
이제 터미널 창에서 텍스트 색상을 지정할 수 있습니다. (사용 echo
)
/etc/issue
이제 실행하기로 결정할 때마다 스크립트를 덮어쓰는 쉘 스크립트를 실행하고 싶습니다 .
이것은 내 스크립트입니다.
#!/bin/sh
# re-write /etc/issue
echo "Welcome Back!........whatever message I will put later on" > /etc/issue
이제 "Welcome back!" 텍스트에 색상을 지정하려고 합니다.
~에 따르면이 웹사이트, 색상 코드를 이스케이프하려면 Ctrl+V+ESC를 사용해야 하는데 다시 작성하려는 목적으로 쉘 스크립트에서 이를 어떻게 수행합니까 /etc/issue
?
작성자가 제공한 예제(rc.issue)를 복사하여 붙여넣었습니다. 실제로 /etc/issue
시작 시 파일을 덮어쓰지만 색상은 없습니다. 일반 텍스트만 표시됩니다.
누구든지 나에게 이것을 말해 줄 수 있습니까?
답변1
쉘뿐만 아니라 대부분의 쉘에서 작동하는 한 가지 방법은 bash
쉘 스크립트의 텍스트에 이스케이프 문자가 나타나는지 확인하는 것입니다.
를 사용하는 경우 이스케이프 문자를 입력하려면 vim
계속 입력해야 합니다. Control-VEscape그렇지 않으면 이스케이프 문자가 삽입 모드에서 명령 모드로 다시 변경되기 때문입니다.
다른 편집자에게는 이 작업을 더 쉽게 또는 더 어렵게 만드는 단점이 있을 수도 있고 없을 수도 있습니다.
이식성 을 사용 중이고 bash
이식성에 관심이 없다면 \e
이스케이프 기호를 사용하는 다른 옵션을 사용할 수 있습니다( bash
관련 항목 참조).ANSI-C 인용문). 예를 들어:
escape=$'\e'
그러나 이것은 다른 모든 쉘에서는 작동하지 않습니다.