Иначе только для heck его:
rev input | cut -c2- | rev | cut -c2-
(Примечание: с GNU cut
, это только работает на символы, сделанные только из одного байта (как в Вашем примере)).
Проверьте использование последней версии удара. Если Вы, сообщаете об ошибке; обязательно укажите точно, где Вы получили двоичный файл удара при установке существующего двоичного файла, или какой компилятор и конфигурацию времени компиляции Вы использовали и где Вы получили источник при компиляции удара собой. Также упомяните свою точную версию AIX и свою аппаратную архитектуру. Упоминание, как воспроизвести ошибку, как Вы сделало здесь, конечно.
“Прерванный системный вызов” не является действительно ошибкой. Это - ошибочное состояние (EINTR
) это говорит вызывающей стороне, что системный вызов не был выполнен вообще (в противоположность предпринятому и неудавшемуся). Нормальный путь к приложению для контакта с EINTR
должен повторно выполнить системный вызов, возможно, после выполнения некоторой другой обработки, такой как выполнение обработчика сигналов. EINTR
существует, чтобы дать шанс приложению выполнять неотложные задачи, в то время как оно занято блокирующимся системным вызовом. Можно ли читать, Когда проверить на EINTR и повторить вызов функции? и Использование повторно используемые функции для более безопасной обработки сигнала для большего количества дополнительного чтения.
Bash видит EINTR
возвращенный системным вызовом в месте, где это не ожидало это. Это сообщает об этом как об ошибке универсальным способом. Это - ошибка, возможно из-за причуды или ошибки операционной системы.