linux - 替换 20 GB csv 文件中的字符串

标签 linux csv scripting

我有一个很大的 csv 文件 (20 GB)。在文件中,我想替换所有出现的 \r<br/> 。我使用以下命令来实现此目的:

sed -i 's/\r/<br\/>/g' data.csv

 perl -i.bak -pe 's/\r/<br\/>/g' data.csv

问题是这两个命令都失败(结果文件为空)。有没有更好的方法来做到这一点?

最佳答案

只需用这个命令替换您的 sed 命令,我刚刚在源字符串中添加了一个 \ ,它将使 \ 成为普通字符。

sed -i 's/\\r/<br\/>/g' data.csv

还有另一种方法可以做到这一点,

tr '\r' '_' data.csv
sed -i 's/_/<br\/>/g' data.csv

关于linux - 替换 20 GB csv 文件中的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28363579/

相关文章:

linux - 找不到 Linux 内核 v3.5 中的 trace_console 定义

powershell - 使用PowerShell从CSV将数据按行明智地插入到SQL表中

scripting - 批量帮助--将文件移动到目录,如果存在文件名,重命名001

python - 为什么使用全局解释器锁?

Linux 终端 : typing feedback gone, 换行符未显示

linux - 从/etc/passwd中拉出相应的信息

linux - 如何在 Ubuntu 上打开一些端口?

csv - elif 语句的语法无效

javascript - 有没有一种方便的方法可以在不转换的情况下从 CSV 文件将值打印到 JS 图表?

ruby - 如何将项目 readme.md 读入 user.github.com 站点?