Unix/Linux의 별칭은 사용자 정의 명령을 작성하거나 기존 명령의 행동 방식을 수정할 수있는 단축키입니다. 별칭 명령을 사용하면 기본적으로 긴 명령을 약화 시키거나 명령에 옵션을 추가하여 사용하기 쉽거나 안전하게 만듭니다.
그러나 별명을 사용할 때, 특히 RM과 같은 강력한 명령의 동작을 변경할 때, 나쁜 습관을 개발하거나 다른 시스템에서 예기치 않은 행동을 발견하지 않도록 조심해야합니다.
이 간단한 튜토리얼에서는 RM을 RM -I를 앨리어싱하는 것이 실용적인 예를 가진 나쁜 관행인지 알게됩니다. 또한 Linux의 RM 명령 별명에 대한 모범 사례와 더 안전한 대안에 대해 배울 것입니다.
목차
UNIX/Linux 시스템에서 명령 RM을 사용하면 파일을 즉시 영구적으로 삭제합니다. 실수로 중요한 파일을 삭제하지 않기 위해 신중하게 사용해야하는 강력한 명령입니다.
어떤 사람들은 별명 rm = "rm -i"와 같은 RM에 대한 별칭을 만들어 더 안전하게 만듭니다. 이 별칭은 RM 명령을 변경하여 무엇이든 삭제하기 전에 확인을 요청합니다.
예를 보여 드리겠습니다. 더 잘 이해할 수 있습니다.
별칭이없는 RM의 예 :
$ rm 중요한 file.txt
이 명령은 확실한 지 묻지 않고 즉시 imquivity-file.txt를 삭제합니다. 오타를 만들거나 마음을 바꾸면 빠르지 만 위험합니다.
별칭이있는 RM의 예 (RM -I) :
$ rm 중요한 file.txt
별칭 으로이 명령은 이제 "일반 파일 'imigical-file.txt'를 제거합니까?"라고 묻습니다. 취소하려면 y (예)를 입력하거나 n (no)을 삭제해야합니다. 결정을 두 번 확인하기위한 단계를 추가하기 때문에 더 안전하다고 느낍니다.
별칭 rm = 'rm -i'는 매우 위험하기 때문에;
이유 1- 나쁜 습관
RM 명령에 익숙해지면 항상 확인을 요청하면 삭제중인 파일을 두 번 확인하는 데 덜주의를 기울일 수 있습니다.
언젠가 해당 별칭 세트없이 사용자 계정을 사용하는 경우 RM은 즉시 파일을 삭제할 수 있습니다. 무슨 일이 일어나고 있는지 깨달을 때 너무 늦을 수 있습니다.
RM은 확인을 요청하지 않고 즉시 파일을 삭제하기 때문에이 습관은 이 별칭이없는 시스템 에서도 위험 할 수 있습니다.
이유 2- 일관되지 않은 행동
다른 컴퓨터 나 시스템 (사무용 컴퓨터, 서버 또는 친구 노트북)을 사용하는 경우 RM 명령에 동일한 별칭이 없을 수 있습니다.
이러한 불일치는 실수로 이어질 수 있지만 확인을 요청받을 것으로 예상하지만 실수로 중요한 것을 삭제할 수 있습니다.
이유 3- 스크립팅 및 자동화 문제
RM을 사용하는 스크립트도 별칭의 영향을받습니다. 스크립트가 확인없이 파일을 삭제할 것으로 예상되면 별칭으로 인해 응답을 기다릴 수 있습니다. 이로 인해 자동화가 파손되어 혼란이 발생할 수 있습니다.
안전을 위해 별칭에 의존하는 대신 신중한 명령 사용을 수행하는 것이 좋습니다. 몇 가지 팁은 다음과 같습니다.
기본 rm 명령을 RM -I에 별칭하는 대신 다음보다 안전한 대안 중 하나를 사용할 수 있습니다.
RM 명령에 대한 사용자 정의 별칭을 만들려면 완전히 다른 이름 (예 : RMI 또는 RMCLI 또는 MYRM 등)을 사용하십시오.
예를 들어 RMI 라는 별칭을 만들겠습니다.
$ nano ~/.bashrc
끝에 다음 줄을 추가하십시오.
별칭 rmi = 'rm -i'
파일을 저장하고 닫으십시오.
지금부터 기본 'rm'대신 파일을 삭제하기 위해 RMI 명령을 사용해야합니다.
$ rmi somefile.txt
실제로 파일을 삭제하려면 프롬프트가 표시됩니다.
RM : 일반 파일 'somefile.txt'를 제거 하시겠습니까?
'y'를 눌러 파일 삭제를 확인하거나 'n'을 눌러 건너 뜁니다.
alias rmi = 'rm -i'와 같은 별도의 별칭을 생성하는 것은 RM 명령의 기본 동작을 무시하는 것보다 더 안전하고 효과적인 접근법입니다.
이 방법을 사용하면 RM의 기본 동작을 변경하지 않고 대화식 삭제 옵션을 가질 수 있으므로 별칭의 과도한 관계로 인해 우발적 인 삭제 위험이 줄어 듭니다.
alias rmi = 'rm -i'사용의 이점 :
이 대안이 더 안전한 파일 삭제에 유리한 이유는 다음과 같습니다.
이전 예에서는 파일을 삭제하기 전에 확인을 위해 'RMI'라는 사용자 정의 명령을 만들었습니다. 또는 로깅을 포함하는 작은 스크립트를 작성하고 나중에 검토 또는 복구를 위해 파일을 쓰레기 디렉토리로 이동할 수 있습니다.
2.1. 스크립트를 만듭니다
다음 내용이있는 rmcli라는 텍스트 파일을 만듭니다.
#!/bin/bash # rmcli : 더 안전한 파일 삭제 스크립트 trash_dir = "$ home/.trash" log_file = "$ home/.rmcli.log" # 쓰레기 디렉토리가 있는지 확인하십시오 mkdir -p "$ trash_dir" # 삭제 대신 파일을 쓰레기로 이동합니다 "$@"의 파일; 하다 타임 스탬프 = $ (날짜%y-%m-%d_%h-%m-%s) trash_path = "$ trash_dir/$ (Basename"$ file ") _ $ timestamp" mv -v "$ 파일" "$ trash_path" echo "[$ timestamp] $ file -> $ trash_path">> "$ log_file" 완료
휴지통 디렉토리 위치 또는 로그 파일 형식 변경과 같은 요구에 따라 스크립트를 자유롭게 수정하십시오. 파일을 저장하고 닫으십시오.
2.2. 스크립트 실행 파일 만들기 :
스크립트를 저장 한 후에는 실행 파일을 만들어야합니다. 이를 통해 명령으로 실행할 수 있습니다. 이렇게하려면 chmod 명령을 사용하십시오.
$ chmod x rmcli
2.3. 스크립트를 경로의 위치로 이동하십시오.
편의를 위해서는 스크립트를 시스템 경로의 위치로 이동하여 디렉토리에서 실행할 수 있도록해야합니다. 개인 스크립트의 일반적인 장소는/usr/local/bin입니다.
$ sudo mv rmcli/usr/local/bin
2.4. 스크립트 사용 :
이제 RM을 사용하는 것처럼 RMCLI 명령을 사용할 수 있지만 스크립트의 안전 기능이 있습니다.
예를 들어:
$ rmcli somefile.txt
이 명령은 영구적으로 삭제하는 대신 쓰레기 디렉토리로 약간의 file.txt를 이동합니다.
샘플 출력 :
'godfile.txt'-> '/home/ostechnix/.trash/somefile.txt_2024-02-28_16-53-59로 이름이 변경되었습니다.
~/.trash 디렉토리의 내용을 나열하여 확인할 수 있습니다.
$ ls ~/.trash
2.5. 파일 복구 :
파일을 복구하려면 Trash 디렉토리 (예에서 ~/.Trash)로 이동하여 파일을 원래 위치 또는 필요에 따라 다른 곳으로 다시 이동하십시오.
$ cd ~/.trash
$ mv somefile.txt_2024-02-28_16-53-59 ~/somefile.txt
2.6. 벌채 반출:
스크립트는 타임 스탬프로 각 "삭제"를 기록합니다. 스크립트에 지정된 로그 파일 위치가 존재하거나 쓸 수 있는지 확인하십시오. 이 로그를 검토하여 휴지통으로 이동 한 파일을 확인할 수 있습니다.
$ cat $ home/.rmcli.log [2024-02-28_16-53-59] somefile.txt-> /home/ostechnix/.trash/somefile.txt_2024-02-28_16-53-59
RM에 대한 또 다른 더 안전한 대안은 Trash-Cli 와 같은 명령 줄 캔 캔 유틸리티를 사용하여 파일을 영구적으로 삭제하는 대신 쓰레기 디렉토리로 이동합니다. 필요한 경우 파일을 복구 할 수 있습니다.
Trash-Cli를 설치하고 사용하는 방법을 알면 다음 링크를 확인하십시오.
Trash-Cli : UNIX와 같은 시스템을위한 명령 선 TRASHCAN
BTRFS (B-Tree 파일 시스템) 또는 ZFS (Zettabyte 파일 시스템)와 같은 무제한 스냅 샷을 지원하는 파일 시스템을 사용하는 것은 우발적 인 파일 삭제 또는 덮어 쓰기에 대한 보호를위한 훌륭한 전략입니다.
스냅 샷은 기본적으로 특정 시점에서 파일 시스템의 읽기 전용 사본이지만 이전 스냅 샷의 차이 만 저장하기 때문에 공간과 시간 모두에서 매우 효율적입니다.
OpenSuse의 Snapper를 사용하여 BTRFS 스냅 샷을 만들고 관리하는 방법
aliasing rm을 RM -I -I는 안전한 안전 조치처럼 보일 수 있지만 별칭이 설정되지 않은 환경에서 과신과 실수로 이어질 수 있습니다.
이러한 팁과 모범 사례를 채택하면 UNIX/LINUX 시스템의 RM 명령과 함께 우발적 파일 삭제와 관련된 위험을 크게 줄일 수 있습니다.
관련 읽기 :
위 내용은 앨리어싱 rm 명령이 Linux에서 나쁜 관행 인 이유의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!