我正在阅读here中的脚本并试图了解正在发生的事情。此函数执行更改Finder窗口的目录:
function ee {
osascript -e 'set cwd to do shell script "pwd"'\
-e 'tell application "Finder"'\
-e "if (${1-1} <= (count Finder windows)) then"\
-e "set the target of window ${1-1} to (POSIX file cwd) as string"\
-e 'else' -e "open (POSIX file cwd) as string"\
-e 'end if' -e 'end tell';\
};\
我假设$
由bash解释,因为它在双引号内。我还没有找到{1-1}
的意思。我在单独的测试脚本中使用了表达式但是找不到与普通$1
的区别。有什么想法吗?
答案 0 :(得分:6)
这意味着如果未设置参数1(${1}
),请将值设置为1.
请参阅parameter substituiton here。
${parameter-default}, ${parameter:-default}
If parameter not set, use default.