我是 ubuntu 新手:)
我需要从 Java 程序打开 PDF 文件。我面临的问题是,Java 程序会检测操作系统并调用相应的文件,例如:在 Windows 中.bat
、在 Linux 中等.sh
。
我已经编写了一个.sh
文件,其中我已写入gnome-open
,并且路径将从 java 程序中添加。从 java 来看,它如下所示:
/home/goodyzain/workspace/XYZ/TerminalTool/src/test/scripts/acrord32.sh /p /h /home/goodyzain/Downloads/goodyzain.pdf
这是传递给终端的命令。即使在终端中也会出现此错误:
Usage: gnome-open <url>
但 如果我写gnome-open /p /h /home/goodyzain/Downloads/goodyzain.pdf
它就会起作用。
我究竟做错了什么?
答案1
如果您想编写一个仅将参数传递给另一个命令的脚本,那么使用:
#! /bin/sh
gnome-open "$@"
"$@"
扩展到参数,与传递的完全一样。
gnome-open
创建一个与程序期望的名称相同的链接可能会更容易:
ln -s /usr/bin/gnome-open /home/goodyzain/workspace/XYZ/TerminalTool/src/test/scripts/acrord32.sh