Вы можете попробовать:
sed s'/.$//'
Используемое регулярное выражение: .$
.
- это метасимвол регулярного выражения для соответствия чему угодно (кроме новой строки) $
является привязкой конца строки.
Используя $
, мы заставляем .
соответствовать последнему символу
Это удалит последнийchar, будь то что угодно:
$ echo ABCD | sed s'/.$//'
ABC
$ echo ABCD1 | sed s'/.$//'
ABCD
Но если вы хотите удалить последний символ, только если это алфавит, вы можете сделать:
$ echo ABCD | sed s'/[a-zA-Z]$//'
ABC
$ echo ABCD1 | sed s'/[a-zA-Z]$//'
ABCD1