如何让你的家目录/home/xxx变得更整洁(linux)
经常在家目录下创建一些 实验用的目录和文件。
浏览家目录(ls、nautilus、....),就会看到各种XDG用户目录 与 自己创建的一些目录/文件 混在一起
(xdg用户目录即 Desktop、Documents、Downloads、Templates等 这些目录)
可以把这些目录放到一个目录中,比如我 创建了一个叫XDG_DIRS的目录
打开看一下
2边都整洁多了。
步骤:
创建目录,名称随你喜欢
把Desktop、Documents、Downloads等这些目录 拷贝进去
编辑~/.config/user-dirs.dirs 文件 ,内容 根据你的目录名称适当修改
XDG_DESKTOP_DIR="$HOME/XDG_DIRS/Desktop" XDG_DOWNLOAD_DIR="$HOME/XDG_DIRS/Downloads" XDG_TEMPLATES_DIR="$HOME/XDG_DIRS/Templates" XDG_PUBLICSHARE_DIR="$HOME/XDG_DIRS/Public" XDG_DOCUMENTS_DIR="$HOME/XDG_DIRS/Documents" XDG_MUSIC_DIR="$HOME/XDG_DIRS/Music" XDG_PICTURES_DIR="$HOME/XDG_DIRS/Pictures" XDG_VIDEOS_DIR="$HOME/XDG_DIRS/Videos"
保险起见,运行 xdg-user-dirs-update
~ xdg-user-dirs-update
重启。
检查无异常之后,原来的那些目录删掉即可
你也可以用这个脚本一键完成
#!/bin/bash [ -z "$1" ] && exit 1 [ -d "$1" ] || mkdir "$1" || exit 1 set -u udirp=".config/user-dirs.dirs" cp -a $(awk -F/ '/^XDG_/{gsub(/"/,"",$2);print $2}' $udirp ) "$1" cp -a $udirp $udirp.bak awk -F/ -v OFS=/ '/^XDG_/{print $1,"'$1'",$2}' $udirp.bak >$udirp xdg-user-dirs-update
➜ ~ cd #在家目录执行 ➜ ~ bash move.sh XDG_DIRS #目录名称