방금 코드에 많은 코드를 붙여 넣었지만 %
명령을 실행하기 전에 선행 코드를 제거하는 것을 잊었습니다 . 아무것도하지 않은 것 같습니다. 왜 이것이 내 쉘 ( zsh ) 에서 아무것도하지 않습니까?
> % echo foo
에서 bash는 , 나는 다음을 얻을
> % echo foo
bash: fg: %: no such job
명령을 실행해도 부작용이 없는지 확인하고 싶습니다.
답변
%
zsh의 “작업 제어 및 프로세스 제어”기능의 일부로 사용되는 ‘jobid’를 나타냅니다. 사용 설명서에서 인용하려면 :
'fg' is the default operation on jobs referred to with the '%' notation,
so just typing '%1' with no command name would have worked, too.
예:
$> man zshall &
[1] + 31392 suspended (tty output) man zshall
$> jobs
[1] + suspended (tty output) man zshall
$> %
<manpage-opens-for-zshall>
자세한 내용은 여기를 참조하십시오 : http://zsh.sourceforge.net/Guide/zshguide03.html#l39
실제 질문에 대답하려면 : zsh가 경고를 표시하지 않으면 ( “fg : 현재 작업 없음”등) 작업이 있습니다. 예:
$> sleep 60 &
$> % echo foo
[1] + 411 running sleep 60
fg: job not found: echo
는 %
단지 백그라운드 프로세스를 다시 가지고 그것을 실행합니다. 60 초 후 발견되지 않은 다음 ‘jobid’를 얻었습니다.
따라서 : 당신이 경험 한 행동은 약간 이상합니다. 전체 zshrc가 없으면 정확히 무슨 일이 일어나고 있는지 말하기가 어렵습니다. ‘%’문자가 주석을 시작한다고 zsh에 알려주는 것처럼 보입니다. histchars
매개 변수의 세 번째 값을 확인합니다 .
$> echo $histchars