在试图解决这个问题一小时后宣布破产。这是问题:
我有一个包含 15,000 个文件的文件夹(Magento)。我想将所有版权日期从 2013 年更改为 2012 年,这样我就可以获得版本之间的合法差异。我正在尝试使用 sed,基于此示例:https ://stackoverflow.com/a/1583282
此命令有效:
cd path/to/project
find . -type f -print0 | xargs -0 sed -i '' 's/2013/2012/g'
除了,我显然不能相信 2013 年只适用于日期。Magento 的 DocBlocks 中的完整字符串是:
* @copyright Copyright (c) 2013 Magento Inc. (http://www.magentocommerce.com)
我正在尝试重写 sed 表达式以使用“(c) 2013 Magento”作为字符串,但出现错误:
sed: RE error: illegal byte sequence
显然,有些东西需要转义,但我找不到任何适用的例子。无论如何,我都不是 bash 向导。
这部分表达式的正确格式是什么?
's/(c) 2013 Magento/(c) 2012 Magento/g'