Unix 명령 출력 끝에 나타나는 "%"는 무엇을 의미합니까?

Unix 명령 출력 끝에 나타나는 "%"는 무엇을 의미합니까?

코드를 실행할 때 출력 끝의 "%"가 무엇을 의미하는지 알 수 있나요?

예를 들어:

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% 

관련 정보