如何使用sed命令注释掉python代码

时间:2012-09-25 08:58:10

标签: python sed comments

我想使用 sed 命令注释掉以下代码行。

实际代码:

response = HttpResponse()
response['Content-Disposition'] = 'attachment; filename=%s.zip' % file_name.replace('.shp','')
response['Content-length'] = str(len(zip_stream))
response['Content-Type'] = mimetype
response.write(zip_stream)
return response

我想要的是什么:

#response = HttpResponse()
#response['Content-Disposition'] = 'attachment; filename=%s.zip' % file_name.replace('.shp','')
#response['Content-length'] = str(len(zip_stream))
#response['Content-Type'] = mimetype
#response.write(zip_stream)
#return response

唯一的问题是文件很大并且到处都包含response,因此根据上面提供的提供,搜索应该更具体。

给定的代码块位于特定文件的整个源代码的中间。

2 个答案:

答案 0 :(得分:2)

我对你在这里要做的事情做了一些假设。我假设您想要在您选择的两行之间注释代码块。这是使用GNU sed的一种方式:

sed -i '/response = HttpResponse()/,/return response/s/.*/#&/' file.txt

答案 1 :(得分:2)

perl -i -ne 'if(/response = Http/../return response/){$_="#".$_}print' your_file