-bash : test.out : 명령을 찾을 수 없습니다.


0

Beaglebone Black 데비안 9.2에 배포하는 Visual Studio 2017 C ++ 프로젝트가 있습니다.

디버그 모드에서 실행하고 콘솔에서 출력을 볼 수 있습니다.

나는 장치에 SSH를 넣고 경로에서 실행할 수있다. /home/steve/projects/BBB2/bin/ARM/Debug/BBB2.out

하지만 내가 그 디렉토리에있을 때 그냥 사용하여 실행하려고 BBB2.out 나는 -bash: BBB2.out: command not found 메시지.

그게 왜?

답변:


1

BB2.out 파일이있는 디렉토리는 시스템 경로의 일부가 아닙니다. 미리 보냄으로써 이것을 지나칠 수 있습니다. ./ 명령에 ( ./BB2.out ) 실행할 때.

또는 현재 디렉토리를 경로에 추가하여 시스템이 실행 파일을 실행할 수있는 디렉토리를 항상 인식하도록 할 수 있습니다.

그러면 현재 디렉토리가 경로의 끝에 추가됩니다.

export PATH=$PATH:.

그러나 여기에 잠재적 인 보안 위험이 문서화되어 있습니다 유닉스 자주 .


이것은 효과가있다. 나는 윈도우 사용자이기 때문에 현재 디렉토리에있는 파일을 찾을 수없는 이유를 이해하기가 어렵습니다. PATH에 모든 폴더를 추가하는 번거 로움처럼 보입니다. 그래서 이것은 실행하는 것이 표준적인 방법이라고 생각합니다. 설치되지 않은 실행 파일은 무엇입니까?
user3953989

1
닷 슬래시 실행 가능 절차는 상당히 표준 적입니다. 많은 가정 리눅스 사용자들이 export PATH 그래서 현재있는 디렉토리가 경로에 포함됩니다. 또 다른 사용자 옵션은 사용자 디렉토리 (/ home / usernam / bin)에 bin 디렉토리를 만들고 거기에 모든 실행 파일을 저장하는 것입니다. 왜, * nix 시스템은 특정 파일이 특정 위치에있을 것으로 기대합니다. 바이너리 (실행 파일)는 일반적으로 bin 디렉토리 (물론 될 수 /bin 또는 /usr/bin ). 파일 시스템 정보
mcalex
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.