이걸 없애려고 노력 중이야불확실한사용에 관해 궁금한 점이 있습니다.이중 대시(하이픈 2개, --)를 옵션 구분 기호의 끝으로 사용합니다(대신긴 옵션 접두사). 누군가가 장기적인 권리가 중요하다는 글을 읽었을 때암소 비슷한 일종의 영양규칙과 긴 옵션은 로 시작합니다 --
. 그러나 이것은 단지 관련이 있습니다옵션 끝구분 기호.
그 사용은 다음과 완전히 일치합니다.IEEE Std 1003.1, 2013 실용 구문 가이드 10:
옵션 매개변수가 아닌 첫 번째 -- 인수는 옵션의 끝을 나타내는 구분 기호로 허용되어야 합니다. 후속 인수는 "-" 문자로 시작하더라도 피연산자로 처리되어야 합니다.
그래서 사람들은 rm
매뉴얼 페이지를 확인할 수 있습니다OSX(또는FreeBSD),AIX,솔라리스그리고고성능 사용자 경험 시스템- 잘 알려진 UNIX '03 등록 Unices:
- OSX, AIX 및 Solaris 1
--
축어적 따옴표 구분 기호남자 RM - HPUX에서는 논의되지 않습니다.남자 RM그러나 위 구분 기호를 사용할 수 있는 다른 명령도 있습니다(예:
touch
)
싱글이 있나요?유닉스 03 제품등록오늘은 무엇을 할 수 없나요 rm -- -foo
? 솔라리스...HPUX인가요? 녹음하지 않아도 할 수 있나요? 이제 이 플랫폼의 모든 명령에 이 기능을 적용할 수 있나요?
1. Solaris 11 매뉴얼의 마지막 메모에는 다음과 같이 나와 있습니다. - - 및 - 둘 다 동일한 명령줄에 나타나면 두 번째 것은 파일로 해석됩니다.처음 두 하이픈 사이에는 공백이 있습니다. 이것은 단지 하이픈인가요, 아니면 하이픈으로 시작하는 모든 항목이 이 경우 파일로 해석됩니까?
답변1
솔라리스 10부터:
~ touch testfile
~ rm -- testfile
~ ls testfile
testfile: No such file or directory
~ touch testfile
~ rm -- -f testfile
-f: No such file or directory
~ ls testfile
testfile: No such file or directory
~ rm - - -f testfile
-: No such file or directory
-f: No such file or directory
testfile: No such file or directory
~
따라서 귀하의 질문에 대답하자면, Solaris 10에서는 두 번째 인스턴스가 하이픈으로 시작하면 파일로 처리됩니다.