pop*_*rap 1 shell terminal automator
我在Mac上使用Automator来设置一个服务,将选定的文件夹作为参数传递给bash shell脚本.在脚本中我做:
for f in "$@"; do
printf "%q\n" "$f" | pbcopy
done
Run Code Online (Sandbox Code Playgroud)
如果我这样做:
echo `pbpaste`
Run Code Online (Sandbox Code Playgroud)
我获取了带有空格escapeped(\)的所选文件夹的路径.然后我想使用这个路径cd进入该目录并做一堆其他的东西(创建一个空白的目录结构).我希望我能做到:
cd `pbpaste`
Run Code Online (Sandbox Code Playgroud)
但这不起作用.如果我手动键入路径的cd工作,所以我认为是数据类型或返回或某事的问题?
我承认我真的不知道这个剧本实际上做了什么,可能会发生这种错误,但是如果有人能解释这里发生了什么以及如何让它工作那将是伟大的,但更好的将是一个指向一个非常好的资源的指针,让一个完整的初学者开始学习shell脚本.我真的很喜欢进入这一点的想法,但我发现的所有资源要么是全部基础(cd,ls,pwd等),要么是真正的高级别,并假设一堆先前的知识.我真的很想与一些实际的例子一样,可以找到我更习惯(HTML/CSS/JS/AS3)的语言,如果这样的事情存在一个完整的语言参考.
欢呼任何帮助:)
我同意@Chepner的答案,但是对于google的结果来说,使用pbpaste进行cd只需:
cd $(pbpaste)
Run Code Online (Sandbox Code Playgroud)