Bash - "/"는 디렉토리입니다.

Bash - "/"는 디렉토리입니다.

이거 정말 혼란스럽네요...

현재 Debian 8 컴퓨터가 있고 PuTTY(SSH)를 사용하여 연결합니다.
사용되는 기본 콘솔은 Bash입니다.

별칭에 대한 경로를 전달하려고 하면 다음 오류가 발생합니다.

 -bash: /: Is a directory

예는 다음과 같습니다.

퍼티

또한 이상한 동작이 있습니다. 마치 Bash가 따옴표를 무시하는 것처럼 실행 '/'하거나 "/"동일한 오류를 발생시키는 것입니다.


중요한 경우 별칭은 explorer다음과 같이 정의되었습니다.

alias explorer='pcmanfm 1>/dev/null 2>&1 &'

이것이 예상되는 동작입니까?
그렇지 않다면 내가 뭘 잘못하고 있는 걸까요?

답변1

별칭을 작성한 방식에 따라 실행하는 명령은 다음과 같이 확장됩니다.

pcmanfm 1>/dev/null 2>&1 & '/'

pcmanfm옵션 없이 백그라운드 작업으로 실행되며그 다음에/명령으로 실행해 보세요 .

별칭 대신 함수를 원할 수도 있습니다.

explorer() { pcmanfm "$@" >/dev/null 2>&1 & }

답변2

별칭은 리터럴 확장을 제공합니다. 따라서 실행 중인 explorer /맵은 다음과 같습니다.

pcmanfm 1>/dev/null 2>&1 & /

이는 pcmanfm백그라운드에서 실행되고 바로 뒤에 /포그라운드에서 실행됩니다.

관련 정보