tar-gzip(或pigz)的Automator应用程序

时间:2015-04-10 17:35:59

标签: bash gzip tar automator

我试图创建一个“归档实用程序”'在OSX下更换以使用tar和gzip(或pigz)命令打开tar.gz文件。

重点是在Automator中创建一个应用程序,以便我可以将tar.gz文件类型绑定到它,然后,当单击tar.gz文件时,shell脚本使用pigz / tar / gzip / etc而不是扩展文件默认存档实用程序。

我的应用包含一个'运行Shell脚本' (或获取选定的Finder项目 - >运行Shell脚本,我已尝试过两者)执行:

/usr/local/bin/pigz -dc "$1" | tar xf -

输入作为参数传递,但由于某种原因,它不起作用。

从命令行使用时,它可以完美运行,但是当设置为应用程序时,它什么都不做。

欢迎任何帮助!

1 个答案:

答案 0 :(得分:2)

尝试

#!/bin/bash
pigz -dc "$1" | tar xf - -C "$(dirname "$1")"

或使用notify-send或OSX上可用的任何通知程序来调试脚本。

在Linux上,未修改的脚本,当在文件浏览器中从非主目录运行时被提取到$HOME,因为$PWD始终是$HOME(正如我从{{}学习的那样1}})无论我在文件浏览器中的哪个位置。因此修复了使用参数的目录。

您的问题可能在其他地方。至少,你需要确保你的脚本是可执行的,并且在你的notify-send(你的GUI $PATH中)。作为使用通知程序的替代方法,您可以在从GUI调用脚本时将一些信息转储到文件中并从终端转发$PATH该文件。