使用符号链接文件夹中的另一个文件?

使用符号链接文件夹中的另一个文件?

我有一款游戏(Starbound),有时我在 Ubuntu 上玩,有时在 Windows 上玩。我想使用相同的游戏配置文件,因此我将目录符号链接到配置文件,这样它就可以在 Windows 和 Linux 版本之间同步。

我在 Linux 下只有 15 FPS,而在 Windows 下却有 ~50 FPS。我从 1920x1080 切换到 1280x720,这样我至少可以用 ~30 FPS 玩游戏。我现在遇到的问题是,每次我在玩完游戏后更换操作系统并想再次玩游戏时,我都必须手动更改分辨率。

确定分辨率的文件位于符号链接文件夹中。有没有办法在 Ubuntu 下使用/path/to/[symlink]/../starbound.conf而不是/path/to/[symlink]/starbound.conf


Ubuntu 16.04

答案1

符号链接只是指向文件的指针。在这种设置中,没有任何东西是“同步的”。符号链接本质上相当于 Windows 的快捷方式。

对于您想要实现的目标,我相信您需要使用两个不同的配置文件,一个用于 Win,一个用于 Linux,每个文件都使用正确的分辨率。

例如... Windows 配置文件(我们称之为 winStarBound.config)将包含您的所有游戏设置,分辨率设置为 1920x1080,Linux 版本的配置文件(我们称之为 linuxStarBound.config)将与 Windows 配置文件完全相同,只是分辨率将设置为 1280x720(或任何适合的值)。

假设配置文件可以在 Win 和 Linux 共同的文件夹中找到,您可以在 Linux 和 Win 中创建一个类似于...的脚本。

- 批处理文件将复制正确的配置文件到位并启动游戏)
复制 winStarBound.config /path_to/starbound/starbound.config
Starbound.exe

Linux- 脚本将复制正确的配置文件到位并启动游戏
cp linuxStarBound.config /path/to/starbound/starbound.config
./StarBound

将脚本/批处理文件命名为相同的名称(即 startStarBound),但在 Windows 中扩展名为 .bat,而在 Linux 中扩展名为 .sh。这样,无论您在哪个操作系统上运行,都只需键入“startStarBound”即可。

PS. 我不知道您是如何运行 Linux 版 StarBound、本机客户端、Steam 和 Wine 的,因此做了上述一些假设。

相关内容