我正在尝试创建一个符号链接,以便能够运行比 18.04 中安装的版本更新的 qpdf 版本。
他们提供了一个 AppImage。
如果我做:
/usr/local/bin$ sudo wget https://github.com/qpdf/qpdf/releases/download/release-qpdf-9.1.1/qpdf-9.1.1-x86_64.AppImage
/usr/local/bin$ sudo chmod a+x qpdf-9.1.1-x86_64.AppImage
/usr/local/bin$ ./qpdf-9.1.1-x86_64.AppImage --version
qpdf version 9.1.1
Run qpdf --copyright to see copyright and license information.
但是当我尝试建立符号链接时(因此我可以在任何地方将其调用为 qpdf):
/usr/local/bin$ sudo ln -s qpdf-9.1.1-x86_64.AppImage qpdf
/usr/local/bin$ ./qpdf --version
qpdf: an input file name is required
Usage: qpdf [options] infile outfile
For detailed help, run qpdf --help
并且它没有显示版本(或--help
等)。
我怎样才能让它工作?
我是 Linux 新手,也许我忽略了一些显而易见的东西。
答案1
我是按照以下方式完成的:
mkdir ~/appimage && cd ~/appimage
wget https://github.com/qpdf/qpdf/releases/download/release-qpdf-9.1.1/qpdf-9.1.1-x86_64.AppImage
chmod +x ~/appimage/qpdf-9.1.1-x86_64.AppImage
$ vim.tiny appimage/qpdf.sh
#!/bin/bash cd /home/user/appimage/ && exec ./qpdf-9.1.1-x86_64.AppImage "$@"`
chmod +x ~/appimage/qpdf.sh
sudo ln -s /home/user/appimage/qpdf.sh /usr/local/bin/qpdf
因此:
$ qpdf --version
qpdf version 9.1.1
Run qpdf --copyright to see copyright and license information.
答案2
您必须禁用参数:
./qpdf -- --version
答案3
这并不能直接回答您有关符号链接的问题,但您可以尝试另一种方法。
卸载 qpdf
apt remove qpdf
为 AppImage 制作自定义桌面启动器
nano ~/.local/share/applications/qpdf.desktop
在 ~/.local/share/applications/ 中创建启动器,自定义此处的“Exec”路径以匹配 AppImage 文件的位置。
[Desktop Entry]
Version=1.0
Name=qpdf
Exec=Path/To/Your/qpdf.AppImage
Terminal=false
X-MultipleArgs=false
Type=Application
StartupNotify=true
将 qpdf 命令添加到 .bashrc 以供 CLI 使用
nano ~/.bashrc && source ~/.bashrc
将以下几行粘贴到现有 ~/.bashrc 文件的末尾。如上所述,自定义此示例中的路径以匹配 AppImage 文件的位置。
qpdf()
{
~/Path/To/Your/qpdf.AppImage
}