我发现了这篇文章:Variations of sed between OSX and GNU/Linux
提供了在Mac OSX上使用sed -i的解决方案,使得它不会在搜索和替换命令上创建后备文件。
如, 注意在-i选项之后的单引号空格单引号以指定零长度扩展:
sed -i ' ' 's/foo/|bar/g' test.html
我的问题 - 这会为我创建一个备份文件,它会为备份文件提供与我输入文件相同的名称,“test.html”
我需要在许多文件上运行搜索/替换,我不想要备份文件。
这是我的实际命令:
sed -i ' ' "s|research/projects/vertebrategenome/havana/|science/groups/vertebrate-annotation|g" test2.html
我在哪里获得一个名为“test2.html”的备份文件
答案 0 :(得分:5)
在Mac上,你得到了sed的BSD版本。它需要包含一个空字符串作为-i的参数。注意,在linux上,很高兴接受-i没有扩展名。
在Linux上:
sed -i 's|StringToReplace|ReplacedString|'
在MacOSX / * BSD上
sed -i '' 's|StringToReplace|ReplacedString|'
注意,您希望空字符串('')不是空白('')。
答案 1 :(得分:2)
我发现在Linux和Mac上使用相同脚本的最佳方法是:
=FREQUENCY(A1:A7952,B2:B9)