데스크탑을 적극적으로 사용하다 보니 데스크탑에 파일과 폴더가 빠르게 쌓이게 됩니다.
bashrc
첫날에 월을 확인한 다음 월 이름이 있는 디렉토리를 생성하고 마지막으로 설정하는 방법이 필요합니다 desktop
.
답변1
- 매일 스크립트를 실행하는 cronjob을 설정할 수 있습니다.
man crontab
- 스크립트에서 다음을 수행합니다.
- 데스크탑에 지난 달에 대한 폴더를 만듭니다
man mkdir
.지난달 날짜(연도 및 월만 - 2016-07)를 변수로 할당하려면 어떻게 해야 합니까? find
한 달보다 오래된 모든 파일을 찾는 명령 을 실행합니다 . 다음은 오래된 파일을find
삭제( )하는 의 예입니다. 생성된 디렉터리에 있는 오래된 파일rm
에 맞게 조정해야 합니다 .mv
X일보다 오래된 파일 삭제 +
- 데스크탑에 지난 달에 대한 폴더를 만듭니다
답변2
먼저 이번 달의 구성을 직접 수동으로 변경하고 다음 달에 이를 실행하세요.
change_desktop()
{
month=$(date +%B)
last_month=$(date '+%B' --date '1 month ago')
mkdir /home/$USER/Desktop/$month
sed -i "s|Desktop/$last_month|Desktop/$month|" ~/.config/user-dirs.dirs
}
이렇게 하면 데스크톱에 이번 달의 폴더가 생성된 다음 구성에서 지난 달을 찾아 이번 달로 변경됩니다.
를 사용하여 이 부분을 자동으로 실행하는 방법을 모르지만 ~/.bashrc
사용자를 위해 크론 작업을 설정하고 매달 실행되도록 할 수 있습니다. change_desktop.sh
다음 코드 추가 라는 파일에 이 코드 조각을 추가하면 됩니다 .
#!/bin/sh
change_desktop()
{
month=$(date +%B)
last_month=$(date '+%B' --date '1 month ago')
mkdir /home/$USER/Desktop/$month
sed -i "s|Desktop/$last_month|Desktop/$month|" ~/.config/user-dirs.dirs
}
change_desktop
그런 다음 다음과 같이 현재 사용자에 대한 크론 작업을 생성합니다.
0 0 12 * * sh /home/$USER/change_desktop.sh
그러나 이 작업을 수동으로 수행하려면 첫 번째 코드 조각을 에 추가하고 터미널에서 ~/.bashrc
실행하면 이미 에 기능이 있으므로 해당 작업이 자동으로 수행됩니다 .change_desktop
~/.bashrc
답변3
나는 내 자신의 대본을 만들어 냈습니다.
new_desktop="$HOME/Desktop/$(LC_ALL=tr_TR.utf8 date +'%B-%Y')"
if [ ! -d "$new_desktop" ]; then
mkdir "$new_desktop"
xdg-user-dirs-update --set DESKTOP "$new_desktop"
nautilus -q
fi
그러나 그것이 얼마나 신뢰할 수 있는지에 대해서는 의문이 듭니다.