我在我的 Mac 上使用 Automator 来设置一个服务,该服务将选定的文件夹作为参数传递给 bash shell 脚本。在我做的脚本中:
for f in "$@"; do
printf "%q\n" "$f" | pbcopy
done
如果我这样做:
echo `pbpaste`
我得到了我选择的文件夹的路径,其中包含空格(\
)。然后我想使用这个路径cd
进入那个目录并做一些其他的事情(创建一个空白目录结构)。我希望我能做到:
cd `pbpaste`
但这不起作用。如果我手动输入路径,cd
那么我认为数据类型或返回或其他东西有问题?
我承认我真的不知道这个脚本实际上在做什么,并且可能会出错,但是如果有人能解释这里发生了什么以及如何让它工作,那就太好了,但更好的是指向一个非常好的资源,让一个完整的初学者开始学习 shell 脚本。我真的很喜欢再深入一点的想法,但我发现的所有资源要么是全部基础知识(cd、ls、pwd 等),要么是非常高的水平,并假设有一堆以前的知识。我真正想要的是完整的语言参考,其中包含一些实际示例,例如您为我更习惯的语言(HTML / CSS / JS / AS3)找到的,如果存在这样的事情的话。
为任何帮助干杯:)