kill --verbose ...
Bash 스크립트에서 사용하고 싶지만 오류가 발생합니다 kill: -verbose: invalid signal specification
. 이것은 물고기에서 아주 잘 작동하기 때문에 이상합니다. 조사 결과 다음과 같은 이상한 행동이 발생했습니다.
$ which kill
/usr/bin/kill
$ sleep 5 & kill --verbose $!
[1] 33730
bash: kill: -verbose: invalid signal specification
... wait for sleep to finish ...
[1]+ Done sleep 5
$ sleep 5 & /usr/bin/kill --verbose $!
[1] 33964
sending signal 15 to pid 33964
[1]+ Terminated sleep 5
무슨 일이야? kill
플래그가 인식되지 않지만 --verbose
== /usr/bin/kill
인 경우 인식되는 이유는 무엇입니까 ?which kill
/usr/bin/kill
답변1
which
오해의 소지가 있는; type
다음으로 변경해 보세요:
$ type kill
kill is a shell builtin
bash를 실행하면 kill
인식되지 않는 내장 명령이 사용됩니다 . 전체 경로를 지정하면 실제로 지원되는 --verbose
외부 명령이 대신 실행됩니다 (귀하의 경우)./usr/bin/kill
--verbose