【问题标题】:Execute Mac/Linux shell script from Finder/Browser in the current folder从当前文件夹中的 Finder/Browser 执行 Mac/Linux shell 脚本
【发布时间】:2018-08-30 05:33:53
【问题描述】:

大家早上好!

我创建了一个超级简单的脚本,可以删除文件夹中的几个文件:

#/bin/bash
rm *.ext1 *.ext2 file1.txt file2.txt

当我使用 shell 执行脚本时,一切正常。但是我希望能够双击脚本来执行它......这确实有效,但就像脚本在另一个文件夹中执行然后我得到的答案是“rm -filename”的列表- : 没有这样的文件或目录”。

如何修改我的脚本以告诉他在它所在的文件夹中执行?注意:我事先不知道文件夹路径,所以我无法指定完整路径!

谢谢!!

【问题讨论】:

标签: linux bash macos


【解决方案1】:

您可以让 Finder(在 Mac 上)告诉您它当前显示的是哪个文件夹:

#!/bin/bash

# Ask Finder which folder it is currently displaying
dir=$( /usr/bin/osascript <<EOF
    tell application "Finder"
    try
            set currFolder to POSIX path of (folder of the front window as alias)
    on error
            set currFolder to "ERROR"
    end try
    currFolder
    end tell
EOF
)
echo "Finder is currently in: $dir"

【讨论】:

    猜你喜欢
    • 2013-05-08
    • 1970-01-01
    • 1970-01-01
    • 2013-08-06
    • 2014-03-26
    • 1970-01-01
    • 2014-02-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多