Я написал следующий скрипт, чтобы проверить класс символов «печатные символы», как описано here.Почему класс POSIX «печатные символы» не соответствует простой строке?
#!/bin/sh
case "foo" in
*[:print:]*) echo "found a printable character" ;;
*) echo "found no printable characters" ;;
esac
Я ожидаю, что этот скрипт для вывода found a printable character
, по крайней мере, один (на самом деле, все) символы в "foo"
печатаемые. Вместо этого он выводит "found no printable characters"
. Почему символы в "foo"
не распознаются как печатные символы?