我正在摆弄 Django。我的一个应用程序(在 management/commands 文件夹内)中有一个自定义管理脚本,其中有一个 subprocess.call() 行。我正在执行“sort A.csv -o A_sorted.csv”调用。写入的排序文件在每行末尾都充满了“^M”。我发现当从命令行运行 sort 命令或从不在 Django 中运行的普通 python 脚本中通过 subprocess.call() 调用相同的命令时,不会发生这种情况。
关于为什么会发生这种情况以及我可以采取什么措施来防止这种情况发生有什么想法吗?
谢谢。
最佳答案
sort
不太可能自行将行结尾从 Unix 更改为 Windows。更有可能的是,A.csv
已包含 Windows 行结尾,而 sort
只是保留它们。如果是您的脚本首先创建 A.csv
,请仔细检查正在使用的换行符约定。
关于python - Django 脚本中 'sort' 命令的 subprocess.call() 正在将\M 添加到我的文件末尾,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14670990/