Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- FILES=$(find . -type f ! -path '*/vendor/*' ! -path '*.git*' )
- for f in $FILES
- do
- F_CHARSET=$(file -bi $f | sed -e "s/.*[ ]charset=//")
- if [ "$F_CHARSET" != "utf-8" ] || [ "$F_CHARSET" != "binary" ] || [ "$F_CHARSET" != "unknown-8bit" ]; then
- iconv -f "$F_CHARSET" -t utf-8 "$f" -o "$f.new"
- CURRENT_FILE_SIZE=$(stat -c%s "$f")
- CURRENT_TMP_SIZE=$(stat -c%s "$f.new")
- if [ "$CURRENT_TMP_SIZE" -ge "$CURRENT_FILE_SIZE" ]; then
- mv -f "$f.new" "$f"
- echo "success \t" "$f"
- fi
- if [ "$CURRENT_TMP_SIZE" -lt "$CURRENT_FILE_SIZE" ]; then
- rm -f "$f.new"
- echo "error \t" "$f"
- fi
- fi
- done
Add Comment
Please, Sign In to add comment