Get the App
SLTechnology News&Howtos  ›  Development  › 

How to achieve batch conversion of shell scripts encoded by files in a directory

Shulou Source: shulou.com Published: 2022-06-03 07:42:12 11月15日 Update

This article will explain in detail how to achieve batch conversion directory file coding shell script, the editor thinks it is very practical, so share to you as a reference, I hope you can get something after reading this article.

An example of batch conversion directory file encoding shell script code.

Requirements description:

As a result of transferring from window to linux, many gbk files under the original win need to be converted to utf8.

The following script only determines that non-utf8 files are converted to utf8 files, and the default non-utf8 file is gbk, which needs to be modified if the file type is inconsistent.

Example:

The code is as follows:

#! / bin/bash

# File Name: iconv.sh

# Author: wanggy

# site: www.yisu.com

#

Show_file ()

{

For file in `ls $1`

Do

If [- d $1 "/" $file]; then

# directory recursive call show_file function

Show_file $1 "/" $file

Else

# Files

Echo $1 "/" $file

File_type= `file $1 "/" $file`

Type= `echo $file_type | grep UTF- 8`

If [- z "$type"]; then

Echo "null non-utf-8 encoding, conversion"

Iconv-f gbk-t utf8 $1 "/" $file-o $1 "/" $file

Else

Echo "utf8 coding does not need to be converted"

Fi

Fi

Done

}

Path=./shell

Show_file $path

On "how to achieve batch conversion directory file coding shell script" this article is shared here, I hope the above content can be of some help to you, so that you can learn more knowledge, if you think the article is good, please share it out for more people to see.

Tags: Files codes directories scripts articles code more good practical consistent no examples content functions articles knowledge types requirements utf-8 recursion Apple Docker Huawei Linux macOS MariaDB Microsoft MySQL NVidia OPPO Reno Xiaomi MariaDB Docker Shulou Information OPPO Reno