如何让你的家目录/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  #目录名称

  

posted @ 2020-08-05 00:43  drelo  阅读(564)  评论(0编辑  收藏  举报