user@laptop ~ $ sudo ln -s ~/Games/JA/openjk.i386 ~/Desktop/JA
user@laptop ~ $ readlink -f ~/Desktop/JA
/home/user/Games/JA/openjk.i386
如您所见,符号链接指向文件,但当我尝试单击它时,它不起作用。但是,如果我将 JA 符号链接放在与其链接到的文件相同的目录中(在本例中~/Games/JA
),它就可以正常工作。如何让它在该目录之外工作(Desktop
例如在中)?
答案1
问题肯定是,二进制文件openjk.i386
肯定期望其目录中有一些文件。但二进制文件假设其目录是~/Desktop/
,但找不到所需的文件。
我建议使用非常小的脚本而不是符号链接。例如它应该看起来像这样:
#!/bin/sh
cd /pathToBinary/
./binary $@
将文件命名为 JA 并使用 使其可执行chmod a+x JA
。
解释:保证$@
如果您的脚本以任何参数启动,它们将被转发到真正的二进制文件。