首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用Bash中的数组将所有dotfiles符号链接到它们的正确目录(包括嵌套Dotfiles目录中的文件)?

如何使用Bash中的数组将所有dotfiles符号链接到它们的正确目录(包括嵌套Dotfiles目录中的文件)?
EN

Stack Overflow用户
提问于 2021-01-27 04:01:18
回答 1查看 168关注 0票数 0

因此,我试图使用Bash来自动化dotfile。在你问之前,这不是问题所在。我已经弄清楚了这个部分。这里是我的代码看起来是什么样子的:

代码语言:javascript
复制
configs=(
    ~/.config/alacritty
    ~/.config/dunst
    ~/.config/flameshot
    ~/.config/i3
    ~/.config/i3status
    ~/.config/kitty
    ~/.config/nvim
    ~/.config/picom
    ~/.config/rofi
    ~/.config/gtk-3.0
    ~/.config/obs-studio
    ~/.config/sway
    ~/.config/waybar
    ~/.config/swappy
    ~/.config/mako
    ~/.config/swaylock
    ~/.config/Code\ -\ OSS/User/settings.json
)

for name in "${configs[@]}"; do
    if [ ! -e "$name" ]; then
        echo "$name does not exist."
        ln -sfv "$HOME/Dotfiles/configs/${name##*/}" "$name"
    else
        echo "$name exists."
    fi
done

这里有个问题。它的工作非常好,直到它尝试符号链接~/.config/Code\ -\ OSS/User/settings.json。当符号链接时,Bash脚本会忽略直到最后一个/为止的所有内容。

这意味着当我运行脚本时,它会在~/.config/Code\ -\ OSS/User/settings.json中创建一个指向~/Dotfiles/configs/settings.json的文件,而不是我在Dotfiles中创建的Code\ -\ OSS目录。

我如何设置它,以便将上面数组中的所有文件都符号链接起来,以便重定向到相应的Dotfiles文件?

EN

回答 1

Stack Overflow用户

发布于 2021-01-27 07:05:14

集中于数组中的最后一个元素,您将执行:

代码语言:javascript
复制
ln -sfv "$HOME/Dotfiles/configs/settings.json" ~/.config/Code\ -\ OSS/User/settings.json

(假设子目录已经存在)

然后创建以下符号链接:

代码语言:javascript
复制
~/.config/Code\ -\ OSS/User/settings.json -> ~/Dotfiles/configs/settings.json

(请注意,lhs是符号链接名,rhs是实际文件。)

你提到的结果是非常自然的行为。相反,如果要创建符号链接,如:

代码语言:javascript
复制
~/.config/Code\ -\ OSS/User/settings.json -> ~/Dotfiles/configs/Code\ -\ OSS/User/settings.json

然后你需要说:

代码语言:javascript
复制
for name in "${configs[@]}"; do
    if [ ! -e "$name" ]; then
        echo "$name does not exist."
        ln -sfv "$HOME/Dotfiles/configs/${name#*config/}" "$name"
    else
        echo "$name exists."
    fi
done
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65912723

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档