![Unix 명령 출력 끝에 나타나는 "%"는 무엇을 의미합니까?](https://linux55.com/image/92149/Unix%20%EB%AA%85%EB%A0%B9%20%EC%B6%9C%EB%A0%A5%20%EB%81%9D%EC%97%90%20%EB%82%98%ED%83%80%EB%82%98%EB%8A%94%20%22%25%22%EB%8A%94%20%EB%AC%B4%EC%97%87%EC%9D%84%20%EC%9D%98%EB%AF%B8%ED%95%A9%EB%8B%88%EA%B9%8C%3F.png)
코드를 실행할 때 출력 끝의 "%"가 무엇을 의미하는지 알 수 있나요?
예를 들어:
Hello,World%
다음에 추가:
저는 Mac Os X iTerm2 zsh 쉘을 사용하고 있습니다.
내 코드
echo 'Hello,World' | tr "\n" "\000"
끝에 개행 문자를 제거하기 위해 tr 명령을 추가했습니다.
저는 vim을 사용하고 있으므로 emacs에서처럼 개행 없이 출력을 얻고 싶습니다.
감사해요.
답변1
이것이 %
표준 팁입니다.
일반적으로 이것은 한 줄에 단독으로 나타납니다.
그러나 이는 방금 실행한 프로그램 중 LF 문자로 끝나는 프로그램에 따라 다릅니다. 대부분의 명령은 이 작업을 자동으로 수행합니다.
예를 들어
% echo hello
hello
%
그러나 명령은 그렇지 않습니다가지다가서 이것을 해보세요. 이 경우 프롬프트가 줄 끝에 추가됩니다.
% printf "hello"
hello%
귀하의 경우 \n
명령을 사용하여 출력에서 제거하여 tr
프롬프트가 같은 줄에 나타납니다.
같은 줄에서 명령을 두 번 실행하여 이를 증명할 수 있습니다.
% echo 'Hello,World' | tr "\n" "\000" ; echo 'Hello,World' | tr "\n" "\000"
Hello,WorldHello,World%