デスクトップを頻繁に使用するため、デスクトップ上にファイルやフォルダが急速に蓄積されます。
bashrc
最初の日に月をチェックし、月の名前でディレクトリを作成し、最後にそれを設定する方法が必要ですdesktop
。
答え1
- 毎日スクリプトを実行する cronjob を設定できます。
man crontab
- スクリプトでは、次の操作を行います。
- デスクトップに先月分のフォルダを作成します
man mkdir
。先月の日付 (年と月のみ - 2016-07) を変数として割り当てるにはどうすればいいですか? - 1 か月以上前のファイルをすべて検索する を実行します。以下は、古いファイルを削除する ( )
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
が、ユーザー用の cron ジョブを設定して、毎月実行するようにすることができます。このコード スニペットを というファイルに追加し、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
次に、現在のユーザーの cron ジョブを次のように作成します。
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
しかし、それがどれだけ信頼できるかは疑問です。