bashrc 함수는 매달 폴더를 생성하고 XDG_DESKTOP_DIR을 폴더로 전환합니다.

bashrc 함수는 매달 폴더를 생성하고 XDG_DESKTOP_DIR을 폴더로 전환합니다.

데스크탑을 많이 사용하다 보니 데스크탑에 파일과 폴더가 빠르게 쌓입니다.

bashrc첫날에 월을 확인한 다음 월 이름으로 디렉토리를 만들고 마지막으로 설정하는 방법이 필요합니다 desktop.

답변1

답변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

그러나 그것이 얼마나 신뢰할 수 있는지 의심스럽습니다.

관련 정보