我的问题是获取一个 .desktop 文件,该文件在终端中运行带有参数的脚本以保持打开状态而不是闪烁,大概是带走了我需要的错误消息。
我展示了一些简单的脚本和.desktops来证明它可以工作。
$ cat /home/westmj/GoogleDrive/perl/hello_world.pl
#! /usr/bin/perl
print "Hello, World!\n\@ARGV:\n";
foreach $arg (@ARGV) {
print "$arg\n";
}
warn "Press 'Enter' or 'Return' to finish.\n";
<STDIN>
$ /usr/bin/perl /home/westmj/GoogleDrive/perl/hello_world.pl 1 a.txt
你好,世界!
@ARGV:
1
a.txt
按“Enter”或“Return”完成。
$ cat hello_world_desktop.desktop
#
[Desktop Entry]
Version=1.0
Name=Hello_World_desktop
Comment=Execute by dropping file onto
Exec=/usr/bin/perl /home/westmj/GoogleDrive/perl/hello_world.pl '%F'
Terminal=true
Type=Application
MimeType=application/vnd.ms-excel;application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;inode/directory;text/plain;text/x-script.perl;
当将文件 a.txt 放到 hello_world_desktop.desktop 上时,将打开一个终端并显示输出(注意完整路径名),并像以前一样等待返回。
你好,世界!
@ARGV:
/home/westmj/GoogleDrive/perl/a.txt
按“Enter”或“Return”完成。
现在好玩的事情开始了。我有一个更复杂的脚本,但它在命令行上运行并成功获取了文件名参数,然后耐心等待被关闭。
$ /usr/bin/perl /home/westmj/GoogleDrive/perl/attenders.pl /home/westmj/GoogleDrive/perl/Attenders_database.xls
在 /home/westmj/GoogleDrive/perl/Attenders_database.xls 中找到输入数据库 将/home/westmj/GoogleDrive/perl/Attenders_database.xls
副本制作
为
/home/westmj/GoogleDrive/perl/ -
2016_08_Aug_11_/home/westmj/GoogleDrive/perl/Attenders_database.xls
以维护数据库历史记录。
数据库版本“2016 年 8 月 11 日”文件后缀“2016_08_Aug_11”
输出目录 = /home/westmj/GoogleDrive/perl/
报告创建完毕。
按“Enter”或“Return”退出。
我有一个 .desktop 文件应该使用相同的调用:
$ cat attenders_desktop_04.desktop
#
[Desktop Entry]
Version=1.0
Name=attenders_desktop_04
Comment=Drag and drop onto this the Attenders_database.xls[x] and optionally directory for output
Exec=/usr/bin/perl /home/westmj/GoogleDrive/perl/attenders.pl '%F'
Terminal=true
Type=Application
MimeType=application/vnd.ms-excel;application/vnd.ms-office;application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;inode/directory;application/zip;
但是如果我将 Attenders_database.xls 拖到 attendancers_desktop_04.desktop 上,所发生的只是终端短暂地打开和关闭。
我不认为这是一个权限的问题。
$ ls -la *.desktop
-rwxrw-r-- 1 westmj westmj 411 Sep 16 21:55 attenders_desktop_04.desktop
-rwxrw-r-- 1 westmj westmj 340 Sep 16 21:52 hello_world_desktop.desktop
现在怎么办?谢谢您的建议。