나는 UNIX 환경에서 작업하고 있는데 내 작업 디렉토리(UNIX 홈 디렉토리에서 멀리 떨어져 있음)에 ~
.
한번은 rm -rf ~
작업 디렉터리에서 이 작업을 수행한 후 홈 디렉터리가 완전히 삭제되어 IT 부서에 도움을 요청한 적이 있습니다.
나는 더 이상 이것을하고 싶지 않습니다. 그동안 다음 사항을 알고 싶습니다.
~
내 작업 디렉토리에 생성되는 이유는 무엇입니까 ? 저장하다가 손가락이 미끄러졌나요? (:w!
그런데 무슨 일이 일어났을까요:w~
?!)p4가 체크인하기 전에 알지 못하는 추가 파일이나 폴더를 찾는 스크립트가 있으므로 이로 인해
~
문제가 발생할 수 있습니다.~
홈 디렉터리를 삭제하지 않고 작업 디렉터리에서 어떻게 제거합니까 ?
del
대신에 사용하는 backup 이라는 백업 명령이 있습니다 rm -rf
. 이는 단지 임시 위치에 저장하는 것뿐입니다. 사용하고 제거할 수도 있지만 ~
, 왜 이런 일이 발생하는지, 어떻게 제거하는지 알고 싶은 것이 더 궁금합니다.
답변1
다음 중 하나를 인용해 보세요.
rm -i '~'
rm -i "~"
rm -i \~
또는 기본 이름뿐만 아니라 경로로 참조하십시오.
rm -i ./~
rm -i /path/to/~
SOME$PATH
이것은 재미있어 보이는 한 문자 이름이지만 개념적으로는 다음과 같은 파일을 만든 경우와 다르지 않습니다.
touch 'SOME$PATH'
다음을 수행하여 제거해 보세요.
rm -i SOME$PATH
(경고: 변수 SOME$PATH
예시 목적으로 여기에는 인용하지 않았습니다. 일반적으로 따옴표로 묶입니다. 'SOME$PATH'
)
두 경우 모두 쉘은 사용자가 제공한 이름을 확장하므로 이러한 일이 발생하지 않도록 해야 합니다.
또한: 파일을 삭제하는 데 사용하지 마세요 rm -rf
! 그 목적은 디렉토리가 삭제될 수 있음을 rm -r
알려주는 것입니다 . rm
파일을 삭제하려고 할 때 실수로 전체 디렉토리를 삭제하고 싶지 않다면 습관적으로 전달하지 마십시오 -r
!
답변2
물결표는 문맥상 단독으로 사용될 때 ls ~
~가 홈 디렉토리에 대한 바로가기이므로 홈 디렉토리를 나열합니다. 이렇게 하면 ls ~brown
Brown의 홈 디렉토리 내용이 나열됩니다.
별도로 지정하지 않는 한 VIM은 변경된 파일의 백업 복사본을 생성합니다: myFile myFile~.
이 동작은 백업을 생성하므로 좋지만 필요하지 않은 경우 .vimrc 파일에 추가하세요. 백업 설정 없음(방금 다음을 vi ~/.vimrc
사용하여 액세스했습니다.)
물론, 다른 사람들이 말했듯이 ~라는 파일이 있으면 문자를 \~로 이스케이프 처리하세요.
me 217 % vi this (saved as :w~)
me 218 % ls
this ~
me 219 % cat \~
kfdkdfk
me 220 % \rm \~
me 221 % ls
this
답변3
오타가 있을 수 있습니다. 구성이 내 구성과 유사 하면 TERM=xterm
키보드의 거의 모든 기능 키가 다음과 같은 이스케이프 시퀀스를 보냅니다.
infocmp -1 | grep -n \~ | tail -n3
138: kich1=\E[2~,
141: knp=\E[6~,
142: kpp=\E[5~,
출력의 절반 이상이 다음을 infocmp -1
포함합니다.~
틸데내 컴퓨터에서 탈출하세요. 대부분의 사람들이 무엇을 하는지 모르겠습니다. 나는 zsh
대부분의 경우 적어도 문자열의 탈출된 부분이 실제로 먹힌다는 것을 알고 있습니다 .~
틸데.
예를 들어 echo
다음을 입력합니다 .<space>
그때 F6
그리고<return>
인쇄...
/home/mikeserv
전송된 실제 이스케이프 시퀀스는 다음과 같습니다.
kf6=\E[17~
>
흥미롭게 도 문자를 포함하는 다른 이스케이프 시퀀스가 있습니다 .
infocmp -1 | grep \>
is2=\E[!p\E[?3;4l\E[4l\E>,
rmkx=\E[?1l\E>,
rs2=\E[!p\E[?3;4l\E[4l\E>,
이는 일반적으로 사용되는 이스케이프 문자입니다. 즉, 문자열을 재설정하고 초기화합니다. 대화형 셸이 입력을 기다리는 동안 키보드를 놓거나 버튼을 누르면 ~
무작위로 잘린 파일이 파일 시스템 전체에 나타날 수 있다는 것을 상상하기 어렵지 않습니다. 적어도 나에게는 가끔 그런 일이 일어난다.