When I used cut today, I found out it doesn't treat a UTF-8 character as a character, but 3 characters because it's 3 bytes long.This seems to be generally true for many tools.Are there versions of the coreutils that are UTF-8 aware?My locale output:LANG=en_US.UTF-8LC_CTYPE=en_US.UTF-8LC_NUMERIC=en_US.UTF-8LC_TIME=en_US.UTF-8LC_COLLATE=en_US.UTF-8LC_MONETARY=en_US.UTF-8LC_MESSAGES=en_US.UTF-8LC_PAPER=en_US.UTF-8LC_NAME=en_US.UTF-8LC_ADDRESS=en_US.UTF-8LC_TELEPHONE=en_US.UTF-8LC_MEASUREMENT=en_US.UTF-8LC_IDENTIFICATION=en_US.UTF-8LC_ALL=Here is when cut doesn't workecho  | cut -c 2-The right output should beif cut -c worked with multibyte characters.
coreutils that are utf aware?
unicode;coreutils;cut
GNU coreutils do understand UTF-8 in general. For example echo  | wc -m correctly outputs 3 in a UTF-8 locale (note that the option is -m, not -c which for historical reasons means bytes).This is a bug in cut. Looking at the source of cut, cut on characters is simply not implemented: the -c option is treated as a synonym of -b.A workaround is to use awk. GNU awk copes with UTF-8 just fine.awk '{print substr($0,2,length)}'