iconv 批量更改文件字符集 uft-8

#!/bin/sh

lujing=`find /test/*.sql`

for loop in $lujing

do

  sleep 2s

  name=`basename  $loop`

  rm  -rf  $loop

  iconv  -f GB2312  -t UFT-8  $loop >/test/$name

  printf "批量修改完毕!\n\r"

done

在使用管道时,设置文件字符集为UTF-8通常涉及到使用文本处理工具和命令行参数。在类Unix系统中,例如Linux或macOS,可以通过各种命令行工具(如`sed`, `awk`, `tr`, `grep`等)来处理文本数据。在这些命令中,有些可以接受字符集作为参数或者支持通过环境变量设置字符集。 要设置文件字符集为UTF-8,可以使用`iconv`命令。`iconv`是一个命令行工具,用于转换文本文件的编码格式。如果你需要将文件从一种字符集转换为UTF-8,可以使用以下命令: ```bash iconv -f 原字符集 -t UTF-8 文件名 -o 输出文件名 ``` 这里的`-f`参数指定了输入文件字符集,`-t`参数指定了目标字符集(UTF-8),`文件名`是要转换的文件,`输出文件名`是转换后的文件名。 如果你使用管道(`|`)来处理数据流,并希望在处理过程中保持字符集为UTF-8,通常需要确保每个处理步骤都支持UTF-8或者在必要时使用`iconv`进行转换。例如,如果你使用`sed`命令进行文本处理,并希望确保字符集为UTF-8,可以这样做: ```bash cat 原文件名 | iconv -f 原字符集 -t UTF-8 | sed 's/要替换的文本/替换为的文本/g' | iconv -t UTF-8 -o 输出文件名 ``` 这样,你先将输入的字符集转换为UTF-8,使用`sed`进行文本处理,然后再将结果转换回UTF-8并输出。 如果你需要设置环境变量以便在多个命令中统一字符集,可以在命令行中设置`LANG`或`LC_ALL`环境变量: ```bash export LANG=en_US.UTF-8 # 或者 export LC_ALL=en_US.UTF-8 ``` 这些环境变量会影响系统和命令行工具的默认字符集行为。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值