http://qs1969.pair.com?node_id=11138579


in reply to Re^2: replacing close-single-quote with apostrophe
in thread replacing close-single-quote with apostrophe

That command is wrong. You want

perl -CSD -Mutf8 -pe"s/’/'/g;"

-Cio has no effect in that example, which you can see by removing it.

$ echo It’s easy | perl -pe"s/’/'/g;" It's easy

-Ci only has an effect if reading from a file

$ perl -Cio -pe"s/’/'/g;" <( echo "It’s easy" ) Wide character in print at -e line 1, <> line 1. It’s easy

This is what you want if reading from a file:

$ perl -CiO -Mutf8 -pe"s/’/'/g;" <( echo "It’s easy" ) It's easy

This is what you want if reading from STDIN:

$ echo "It’s easy" | perl -CIO -Mutf8 -pe"s/’/'/g;" It's easy

Combining both, you can use

perl -CiIO -Mutf8 -pe"s/’/'/g;"

Better:

perl -CSD -Mutf8 -pe"s/’/'/g;"