--strip-trailing-slashes의 예를 찾아보세요.

--strip-trailing-slashes의 예를 찾아보세요.

--strip-trailing-slashes이 명령의 옵션이 혼란스럽다고 생각합니다 mv.

공식 GNU 매뉴얼에 따르면, 이 옵션은 "소스 인수에 슬래시가 있고 디렉토리에 대한 기호 링크를 지정할 때 유용합니다". 그래서 나는 다음을 시도합니다.

$ mkdir a
$ ln -s a b 
$ mv --strip-trailing-slashes b/ c

나는 을 얻었고 mv: cannot move 'b' to 'c': Not a directory, 이름을 b로 바꾸고 싶었습니다 c.

제가 이 옵션을 잘못 이해한 걸까요? 이 옵션을 사용하는 방법에 대한 예가 있습니까?

답변1

명령이 mv때때로 혼란스러울 수 있습니다.

mv명령에는 두 가지 옵션이 있습니다매개변수:

mv one two

하나, 기본 설정은 다음과 같습니다.문서 one디렉토리를 입력하십시오 two.

디렉터리가 two존재하지 않으면 mv one two이동으로 해석될 수 있습니다.문서 one도착하다문서 two(이름 바꾸기). 물론 파일이 two이미 존재하는 경우 해당 파일을 덮어쓸 것인지(또는 다른 옵션) 묻는 메시지가 사용자에게 표시될 수 있습니다.

--strip-trailing-slash이 옵션을 사용하면 이동 잠금을 의미하는 것 같습니다.one 문서가 되다목차(이름 변경이 아님).

디렉토리를 사용할 때 여전히 디렉토리 이름을 바꾸려면 --strip-trailing-slash디렉토리가 존재하지 않는다고 선언해야 합니다.

mv -T one two

예:

$ mkdir one
$ ln -s one two
$ mv two/ yes
mv: cannot move 'two/' to 'yes': Not a directory

$ mv --strip-trailing-slash two/ yes
mv: cannot move 'two' to 'yes': Not a directory

$ mv -T --strip-trailing-slash two/ yes

$ ls -la
total 12
drwxr-xr-x 3 isaac isaac 4096 Jul 01 03:38 .
drwxr-xr-x 6 isaac isaac 4096 Jul 01 03:37 ..
drwxr-xr-x 2 isaac isaac 4096 Jul 01 03:38 one
lrwxrwxrwx 1 isaac isaac    3 Jul 01 03:38 yes -> one

관련 정보