【发布时间】:2016-04-15 08:14:37
【问题描述】:
我有一个 sed 命令来更改 python 文件中的某些内容:
sed -i 's|encoding = "ascii"|encoding = "utf-8"|g' /usr/local/lib/python2.7/site.py
所以我想用“utf-8”替换“ascii”,但这不起作用。 谁能解释为什么它不起作用以及我需要更改什么?
>> import sys
>> reload(sys)
>> sys.getdefaultencoding();
--> "ascii"
Run my command
>> import sys
>> reload(sys)
>> sys.getdefaultencoding();
--> "ascii"
【问题讨论】:
-
这对我来说很好。发布一个示例文件,以便我们仔细检查。
-
文件的编码不会因为改变一行而改变。
-
@fedorqui 这是用于更改已安装 python 环境 (/usr/local/lib/python-verison/sites.py) 的默认编码。我们想使用 dockerfile 更改它以进行一些测试
-
不确定你想在这里做什么,MaxC。为什么改变一段文件的内容会改变它的编码?
-
@fedorqui 这是一个python的配置文件。当您在配置文件中更改此设置时,python 的默认编码类型将更改:stackoverflow.com/questions/36623471/…
标签: sed