所以在React 0.12中,不再需要在所有jsx文件的顶部都有/** @jsx React.DOM */
。我看到的库实际上会在看到每个jsx文件顶部存在的/** @jsx React.DOM */
行时抛出错误。
所以我想知道是否有一种快速方法使用sed从目录中的每个文件中删除此行。
我应该删除第1行,还是有办法让我进行模式匹配,并验证它是否位于顶部?如何以递归方式将其从目录中的所有文件及其子目录中删除?
谢谢!
答案 0 :(得分:4)
是的,在find
的帮助下,这很简单。以下命令排列所有 * .jsx 文件的第一行:
find /path/to/files -name '*.jsx' -exec sed -i '1d' {} \;
此命令删除包含该特定注释的行:
find /path/to/files -name '*.jsx' -exec sed -i '/^\/\*\* @jsx React\.DOM \*\/$/d' {} \;
在发出命令之前备份文件,因为它们会修改文件。比抱歉更安全。