poc*_*ese 5 macos shell command-line sed
这是一个适合你的大师.我真的不太了解sed将它完全分开.它是在一些标准的Linux发行版上编写的,我需要它在OSX上运行.
COMPILE_FILES=$(sed -nr '/<script type="text\/javascript"/ { s%^.*src="\{\$baseUrl\}/([^"]+)".*$%\1%p }' templates/common/minifiedScripts.tpl)
Run Code Online (Sandbox Code Playgroud)
第一件事是在OSX版本的sed上不存在r标志.我认为等效的是-E,所以改变了它.但后来我得到:
sed: 1: "/<script type="text\/ja ...": bad flag in substitute command: '}'
Run Code Online (Sandbox Code Playgroud)
谢谢!
Pau*_*ce. 10
OS X sed不喜欢使用分号一起运行多个命令或用花括号分组(在您拥有的命令中不需要).试试这个:
COMPILE_FILES=$(sed -n -E '/<script type="text\/javascript"/ s%^.*src="\{\$baseUrl\}/([^"]+)".*$%\1%p' templates/common/minifiedScripts.tpl)
Run Code Online (Sandbox Code Playgroud)
如果您的sed脚本包含多个命令,则必须使用-e以下命令将其分解:
sed -n -E -e '/match/ {' -e 's/foo/bar/' -e 's/baz/qux/' -e 'p' -e '}'
Run Code Online (Sandbox Code Playgroud)