shell에서 rm으로 파일을 삭제하면 완전삭제(?) 가 되어 난감한 일이 가끔생기는데요....
소스의 보고인..github 를 찾아보니..!!
shell에서도 휴지통을 쓸 수 있는 도구가 몇 가지 있는데 대체로 trash-cli라는 이름이네요~
우선, 2개정도 발견할 수 있어고요..
https://github.com/andreafrancia/trash-cli
https://github.com/sindresorhus/trash-cli
설치방법을 알아보니깐요...
npm이나 pip 등으로 설치하고 쓰면 되는것 같고요...
특히 꿀팁은 rm에 alias를 걸어서 쓰면 편리하네요...
우선, andreafrancia/trash-cli 에 대해서 간단하게 설명드리자면..
trash-put: 파일이나 디렉토리를 휴지통에 버립니다
trash-empty: 휴지통을 비웁니다. 날짜를 지정해서 며칠 지난 파일만 비울 수도 있네요..
trash-list: 휴지통에 있는 파일 리스트를 봅니다
trash-restore: 휴지통에서 파일을 복구합니다.
trash-rm: 휴지통에서 일부 파일을 영구히 삭제합니다
그리고, 휴지통이 자동으로 비워지게 하려면 어떻게 해야할까요?
크론탭을 활용하면 됩니다.
30일 넘은 파일을 자동으로 지우려면 아래와 같이 크론탭에 등록해서 씁니다
그리고, 한가지 의문이 생기실것 같은데요...
지워진 파일, 즉 휴지통은 어디에 있을까요???
휴지통 위치는 ~/.local/share/Trash/입니다.
KDE, GNOME, XFCE가 모두 이 위치를 휴지통으로 쓰기 때문이라고 하네요..
사용방법은 아래내용 참고부탁드릴께요
Usage
Trash a file:
$ trash-put foo
List trashed files:
$ trash-list
2008-06-01 10:30:48 /home/andrea/bar
2008-06-02 21:50:41 /home/andrea/bar
2008-06-23 21:50:49 /home/andrea/foo
Search for a file in the trashcan:
$ trash-list | grep foo
2007-08-30 12:36:00 /home/andrea/foo
2007-08-30 12:39:41 /home/andrea/foo
Restore a trashed file:
$ trash-restore
0 2007-08-30 12:36:00 /home/andrea/foo
1 2007-08-30 12:39:41 /home/andrea/bar
2 2007-08-30 12:39:41 /home/andrea/bar2
3 2007-08-30 12:39:41 /home/andrea/foo2
4 2007-08-30 12:39:41 /home/andrea/foo
What file to restore [0..4]: 4
$ ls foo
foo
Restore multiple trashed files separated by ',', also support range:
$ trash-restore
0 2007-08-30 12:36:00 /home/andrea/foo
1 2007-08-30 12:39:41 /home/andrea/bar
2 2007-08-30 12:39:41 /home/andrea/bar2
3 2007-08-30 12:39:41 /home/andrea/foo2
What file to restore [0..3]: 0-2, 3
$ ls foo bar bar2 foo2
foo bar bar2 foo2
Remove all files from the trashcan:
$ trash-empty
Remove only the files that have been deleted more than <days> ago:
$ trash-empty <days>
Example:
$ date
Tue Feb 19 20:26:52 CET 2008
$ trash-list
2008-02-19 20:11:34 /home/einar/today
2008-02-18 20:11:34 /home/einar/yesterday
2008-02-10 20:11:34 /home/einar/last_week
$ trash-empty 7
$ trash-list
2008-02-19 20:11:34 /home/einar/today
2008-02-18 20:11:34 /home/einar/yesterday
$ trash-empty 1
$ trash-list
2008-02-19 20:11:34 /home/einar/today
Remove only files matching a pattern:
$ trash-rm \*.o
그리고 설치방법은 아래와 같습니다.
Installation
The easy way
Requirements:
- Python 3 (Python 2.7 may work)
- pip (use apt-get install python-pip on Debian, use apt install python3-pip on Ubuntu)
Installation command:
pip install trash-cli
Note: you may want add ~/.local/bin to the PATH:
echo 'export PATH="$PATH":~/.local/bin' >> ~/.bashrc
source ~/.bashrc # reload .bashrc
From sources
System-wide installation:
git clone https://github.com/andreafrancia/trash-cli.git
cd trash-cli
sudo pip install .
User-only installation:
git clone https://github.com/andreafrancia/trash-cli.git
cd trash-cli
pip install .
After the user installation you may want add this line to your .bashrc:
export PATH=~/.local/bin:"$PATH"
For uninstalling use:
pip uninstall trash-cli
From package manager
Debian/Ubuntu (apt):
sudo apt install trash-cli
이어서, sindresorhus/trash-cli 에 대해서 알아보면요..
github 에서는 아래와 같이 설명하고 있고요..
- Move files and folders to the trash
한마디로, 휴지통이라고 보시면 됩니다.
설치및 사용법은 아래내용 참고하시면 되고요..
Install
npm install --global trash-cli
Usage
$ trash --help
Usage
$ trash <path|glob> […]
Examples
$ trash unicorn.png rainbow.png
$ trash '*.png' '!unicorn.png'
팁도 설명하고 있었는데요.. (한마디로 alias 를 사용하라는 이야기죠~)
좀 더 자세한 사항은 위에서 링크로 찾아가보시면 될것 같네요..
오늘의 블로그는 여기까지고요..
항상 믿고 봐주셔서 감사합니다.
'좋아하는 것_매직IT > 96.IT 핫이슈' 카테고리의 다른 글
Code Catalog - 오픈소스로 코딩 배우기 (codecatalog.org) (0) | 2022.08.03 |
---|---|
Karmem - 구글 Flatbuffers 보다 10배 빠른 바이너리 직렬화 포맷 (github.com/inkeliz) (0) | 2022.08.03 |
Publii - 스태틱 웹사이트 제작용 데스크탑 CMS 오픈소스 (0) | 2022.08.01 |
Blueboat - 올인원 멀티테넌트 서버리스 자바스크립트 런타임 (github.com/losfair) (0) | 2022.08.01 |
PickCode - Scratch 다음을 위한 교육용 코딩 환경 (pickcode.io) (0) | 2022.07.31 |