Linux shell操作.csv文件

使用Shell处理CSV文件时,可以借助以下命令和技巧来进行常见的操作:

  1. 读取CSV文件:使用cat命令结合重定向符号(>>>)或管道(|)来读取CSV文件的内容。
   cat file.csv    # 查看CSV文件的内容
  1. 提取特定列:使用cut命令可以提取CSV文件中的特定列。
   cut -d ',' -f 1,3 file.csv    # 提取第1列和第3列的数据(以逗号作为字段分隔符)
  1. 过滤行:使用grep命令可以根据某些条件筛选CSV文件中的行。
   grep "keyword" file.csv    # 提取包含指定关键字的行
  1. 排序数据:使用sort命令可以对CSV文件中的数据进行排序。
   sort -k 2n file.csv    # 按第2列进行数值排序
  1. 统计计算:使用awk命令可以进行数据的统计计算。
   awk -F ',' '{sum += $3} END {print sum}' file.csv    # 计算第3列数据的总和
  1. 修改CSV文件:使用重定向符号(>>>)将处理结果输出到新的文件或覆盖原文件。
   grep "keyword" file.csv > filtered_file.csv    # 将包含指定关键字的行写入新文件

下面列出了几种常用 查看当前的CSV文件的字符编码格式 的方式:

  1. 使用文本编辑器:打开CSV文件,并使用文本编辑器(如Notepad++、Sublime Text、Visual Studio Code等)来查看文件的字符编码格式。通常在编辑器的底部状态栏或设置中可以找到当前编码的显示。

  2. 使用命令行工具:在命令行中,你可以使用file命令来检测文件类型和编码。使用以下命令来查看文件的编码格式:

   file -i file.csv

该命令将输出文件的MIME类型和编码信息。

  1. 使用第三方工具:还有一些第三方工具可供使用,如encachardet等。这些工具可以自动检测文件的字符编码格式。
   enca -L none file.csv    # 使用enca工具检测文件的字符编码
   chardet file.csv    # 使用chardet工具检测文件的字符编码

请注意,上述方法并非绝对准确,特别是当文件没有明确的编码标识时。因此,如果你发现CSV文件在不同的工具或方法中显示不同的编码格式,可能需要进行进一步的分析和判断,或者尝试使用不同的编码转换方法。

以下是一个将CSV文件从UTF-8编码转换为其他编码的示例,可以反过来用:

	iconv -f UTF-8 -t GBK file.csv > converted_file.csv
	iconv -f UTF-8 -t UTF-16 file.csv > converted_file.csv
	iconv -f UTF-8 -t ASCII file.csv > converted_file.csv

猜你喜欢

转载自blog.csdn.net/qq_38202733/article/details/131570807