防止 readlink 参数中的字符串拆分

防止 readlink 参数中的字符串拆分

我正在编写一个小脚本,以符号方式将配置文件从我的 dotfiles 目录链接到另一个目录。我无法控制文件名,不幸的是其中一个文件名给我带来了很多麻烦。我最简单的可重现案例如下:

export file_name='My Configuration Text.theme'

readlink -f $file_name

预计会返回:

/home/me/folder/My
/home/me/folder/Configuration
/home/me/folder/Text.theme

我需要这个不被分割。我也尝试过

readlink -f $(printf "%q " $file_name)

而且它似乎并没有解决问题。有没有解决这个问题的方法,或者我最好用更强大的东西(比如Python)重写我的链接脚本?

相关内容