0

我收集了 python 文件,这些文件使用以下尝试,除了格式化

try:
    # some code....
except Exception, e:
    # some exception code....

这是一个简单的修复,应该看起来像

try:
    # some code....
except SomeException as e:
    # some exception code....

我尝试使用该命令更改所有这些文件中的文本

grep -Erl "(*.)(, e:)" | xargs sed -i's/\(*.\)\(, e:\)/\1 as e:/'

但这给了我一个错误。

4

2 回答 2

1

你可以试试这个sed

sed -i.bak '/except/{ s/\(except\) \([^,]\+\)\(, e:\)/\1 \2 as e:/}' your_python.py

这将备份带有.bak扩展名的原始文件。

于 2013-10-28T05:36:53.400 回答
0

要使用正则表达式匹配零个或多个字符,请使用.*,而不是*.-i此外,您需要在和命令之间有一个空格sed

于 2013-10-28T04:35:31.407 回答