
파일을 생성하고 문자가 포함된 파일을 삭제하기 위해 이미 많은 명령을 시도했지만 #
작동하지 않습니다. 로 시작하는 파일을 만들고 삭제하는 명령을 알려줄 수 있는 사람이 있나요 #
?
답변1
"재미있는 문자"가 포함된 파일을 생성/삭제하는 두 가지 표준 방법은 다음과 같습니다.
- 인용, 알렉스가 보여준 것처럼요. 확장 요구 사항에 따라 작은따옴표나 큰따옴표를 사용할 수 있습니다. 백슬래시를 사용하면 재미있는 문자 하나를 이스케이프 처리할 수 있습니다. 파일 이름이 옵션(대시로 시작)처럼 보이지 않는 한 이는 작동합니다.
- 파일이 옵션처럼 보이면,경로 앞에 추가:
rm ./- "./-rf ."
최신 버전의 Unix 유틸리티는 종종 다음을 지원합니다.이중 대시옵션의 끝을 나타냅니다. 이러한 시스템에서는 rm -- -
이라는 파일을 제거합니다 -
.
이름에 슬래시나 ASCII NUL이 포함된 파일은 생성하거나 제거할 수 없습니다. 그러한 파일이 있다면(본 적이 있습니다) 파일 시스템의 무언가가 심각하게 잘못된 것입니다.
hash 의 특별한 경우에 #
문제는 셸이 #
다음으로 시작하는 단어를 시작하는 것으로 해석하는 데서 발생합니다.쉘 코멘트. 좋은 셸을 사용하면 다음과 같은 셸 기능을 비활성화할 수 있습니다.대화형 댓글:
- zsh:
unsetopt interactivecomments
- 세게 때리다:
shopt -u interactive_comments
이것들을 사용하면 번거로움 없이 간단히 할 수 있습니다 touch #; rm #
.
답변2
만들다...
touch "#file"
지우는 것...
rm "#file"