방금 bash 4.3에서 이것을 발견했습니다. 정확한 버전 번호는 4.3.42(1)-release(x86-redhat-linux-gnu)입니다.
$ ..
$ ...
$ ....
$ .....
왜 "명령을 찾을 수 없습니다"라는 메시지가 표시되지 않습니까?
$ ...
$ echo $?
$ 127
나는 확인해 보았으나 $PATH
아무것도 발견하지 못했습니다 alias
. 그 사람도 도움이 되지 않았습니다.
bash는 Fedora Linux에서 실행되지만 운영 체제와는 아무런 관련이 없다고 생각합니다.
편집하다
방금 이것이 모든 지점 실행 명령에 대해 동일하다는 것을 알았습니다.
.za
.zaza
..za
..zaza
답변1
이는 Fedora에서 명령을 찾을 수 없기 때문에 발생합니다.
알 수 없는 명령( ...
별칭이 일치하지 않는 경우 등 포함) 을 실행하면 command_not_found_handle
누락된 명령이 인수로 실행됩니다( /etc/profile.d/PackageKit.sh
해당 정의 참조). 주어진 시나리오에서는 /usr/libexec/pk-command-not-found
누락된 명령을 인수로 사용하여 핸들러가 다시 실행됩니다 . 예전에는 pk-command-not-found
단순히모두 무시.
:
if (argv[1][0] == '.')
goto out;
코드 127로 종료되었습니다.
이 행동은소개하다수리하다레드햇 #1151185, 또한 인용됨Bash는 점으로 시작하는 존재하지 않는 명령에 대해 오류 메시지를 인쇄하지 않습니다., 수정을 요청하는 버그가 있습니다(레드햇 #1292531). PackageKit 1.1.8 기준(참조:이번에 제출하세요): 이제 앞에 점이 있는 명령만 처리 .
하고 ..
무시합니다.