如何在 macOS 终端上实现此功能?
sed -i 's/config.action_mailer.default_url_options =.*$/config.action_mailer.default_url_options = {:host => "localhost:3000"}/g' config/environments/development.rb
sed: 1: "config/environments/dev ...": command c expects \ followed by text
答案1
您遇到的问题是,后面的下一个参数-i
被用作添加到源文件的备份副本的字符串。正确的语法如下:
sed -i '.BAK' 'command' file
缺少的.BAK
留下下一个参数:config/…
作为要执行的命令,并且 sed 尝试(并失败)执行该c
命令( 的第一个字母command
)。
所以,这是一个完全相同的副本如何使用 sed -i (就地编辑)实现可移植性?