![소프트 링크는 파일 이름을 첫 번째 인수로 대상에 전달합니까?](https://linux55.com/image/212760/%EC%86%8C%ED%94%84%ED%8A%B8%20%EB%A7%81%ED%81%AC%EB%8A%94%20%ED%8C%8C%EC%9D%BC%20%EC%9D%B4%EB%A6%84%EC%9D%84%20%EC%B2%AB%20%EB%B2%88%EC%A7%B8%20%EC%9D%B8%EC%88%98%EB%A1%9C%20%EB%8C%80%EC%83%81%EC%97%90%20%EC%A0%84%EB%8B%AC%ED%95%A9%EB%8B%88%EA%B9%8C%3F.png)
https://github.com/adurbin/iotools
원래 사용법은 다음과 같습니다.
./iotools rdmsr x xxxxx
내가 할 때 :
ln -sf iotools rdmsr
그러면 다음과 같이 할 수 있습니다.
rdmsr x xxxxx
왜? ?
소프트 링크를 만들 때 파일 이름을 첫 번째 인수로 전달하기 때문입니까?
답변1
관례적으로 모든 명령의 인수 목록에는 명령 자체가 포함됩니다. 당신이 달릴 때
./iotools rdmsr x xxxxx
iotools
./iotools
매개변수 , rdmsr
및 x
실행을 사용하십시오 xxxxx
. 당신이 달릴 때
rdmsr x xxxxx
iotools
매개변수를 사용 rdmsr
하고 x
을 실행합니다 xxxxx
.
대부분의 명령은 두 번째 인수(번호가 0부터 시작하므로 숫자 1)부터 시작하는 인수를 확인합니다. 하지만 일부는,포함하다iotools
, 필요한 경우 첫 번째 인수를 고려합니다. 경우에는 iotools
먼저 두 번째 인수( argv[1]
)가 명령인지 확인하고, 그렇다면 이를 사용하고, 그렇지 않으면 첫 번째 인수( argv[0]
)가 명령인지 확인합니다.