Bash에서 를 실행하면 kill %1
현재 셸(내가 믿는 가장 최근 명령)의 백그라운드 명령이 종료됩니다.
물고기에도 비슷한 것이 있나요? 온라인으로 검색했는데 찾을 수 없었어요.
제가 잘못하고 있는 것인지는 모르겠지만,
$ ps
PID TTY TIME CMD
73911 pts/5 00:00:00 fish
73976 pts/5 00:00:00 ps
$ sleep 100
^Z⏎
$ kill %1
$ ps
PID TTY TIME CMD
73911 pts/5 00:00:00 fish
74029 pts/5 00:00:00 sleep
74121 pts/5 00:00:00 ps
답변1
명령이 적용되었지만 작업이 중지되었기 때문에 아직 신호에 응답하지 않았습니다.
귀하의 예에서는 작동하지 않는 것 같습니다. fg
프로세스를 사용하거나 계속하거나 bg
프로세스를 강제로 종료 kill -SIGKILL %1
하면 종료됩니다.
kill %1
bash 및 zsh는 이러한 셸에 내장된 명령이고 신호 SIGCONT
에 추가로 (또는 지정) 전송되므로 즉시 작동합니다.SIGTERM
답변2
Fish 명령은 jobs
명령 작업의 ID/그룹을 표시할 수 있습니다. 실행하려는 최신 작업 ID를 얻으려면 zsh/bash를 (jobs -gl)
에뮬레이션하세요 .%1
그러므로
kill (jobs -lg)
성공할 것이다