Search code examples
bashencodingiconv

Change encoding multiple file with iconv in bash


I want to change multiple php files encoding with iconv.

I use find and exec option (Reference : http://linux.bigresource.com/Ubuntu-Encoding-Conversion-on-Multiple-Files--4fuXvUwbN.html)

find . -type f -name '*.php' -print -exec iconv -f euc-kr -t utf-8 {} -o {}.utf8 

But the error is occured.

find: missing argument to `-exec'

I just want to convert all php files in a once time. How can i do this with one statement in a bash?


Solution

  • You must put either \; or + at the end of the -exec action.

    find . -type f -name '*.php' -print -exec iconv -f euc-kr -t utf-8 {} -o {}.utf8 \;