이것Angular 2 스타일 규칙지연 로딩을 나타내는 폴더는 +
더하기 기호( )로 시작해야 합니다.
이는 실행 시에는 잘 작동 cd +directory/
하지만, 이러한 디렉터리 내의 파일에 외부적으로 명령을 사용할 때 문제가 발생합니다. vim +folder/file.ts
작동하지 않습니다. 기본 디렉토리에서 작업을 수행할 때 디렉토리에 있는 git rm --cached **/*.js*
.+
개념을 포기할 수도 있지만 +directory
컨벤션에 감사드립니다.
특수 문자로 시작하는 디렉토리 내의 파일에 명령을 사용하는 방법은 무엇입니까?
답변1
많은 명령( head
/ tail
, sort
, sh
... vim
)은 +
특수 문자로 시작하는 인수를 처리하므로 특수 문자를 파일 이름의 첫 번째 문자로 사용하는 것은 좋은 생각이 아닙니다. -
보다 일반적으로 사용되는 옵션 리더 역할도 마찬가지 입니다.
for 와 마찬가지로 특별한 처리를 -
피하기 위해 접두사를 +
사용할 수 있습니다 ./
. ./+foo
로 시작하지 않는 또 다른 경로입니다 . 이 팁은 매개변수가 내용에 따라 다르게 처리되는 다른 경우에도 유용합니다. 예를 들어 ImageMagick 명령에 파일 이름이나 파일 이름을 포함하면 도움이 됩니다.+foo
+
./
awk
=
awk 1 a=b
awk 1 ./a=b
:
+x
옵션으로 인식되는 일부 명령의 경우 --
옵션 끝을 표시하는 것도 도움이 될 수 있습니다. 일반적으로 prefixes 보다 적은 경우에 작동합니다 ./
.
답변2
프로그램이 명령줄 인수를 (잠재적인) 옵션으로 해석하는 것을 중단하고 이를 --
"실제" 옵션 다음에 사용하는 파일로 처리하기 시작해야 하는 경우:
vim -- +folder/file.ts
gif rm --cached -- **/*.js*
모든 프로그램이 이를 구현하는 것은 아니지만 대부분의 최신 프로그램은 이를 구현합니다.