Как в bash-е удалить концевые пробелы?, WaprOld, 28-Май-04, 03:25 [смотреть все]Как в bash-е удалить концевые пробелы? Желательно не прибегая к вызову внешних программ и без использования циклов поиска непробела с конца строки (это тривиально, но медленно) Сейчас я применяю такую конструкцию: A="Чему-то там " A="${A//[ ][ ]}" A="${A//%[ ]}" Но эта штука удалит и двойной пробел внутри строки, а это совсем нехорошо, пусть уж лучше она его двойным и оставит, если не может на одинарный поменять. |
- Как в bash-е удалить концевые пробелы?, pth, 05:34 , 28-Май-04 (1)
A=${A//%+( )/}А зачем такие извраты именно в bash?
- Как в bash-е удалить концевые пробелы?, WaprOld, 15:53 , 28-Май-04 (2)
>A=${A//%+( )/} Не удаляет ничего %-( >А зачем такие извраты именно в bash? Чтобы не завязываться на другие программы. К тому-же если bash-а будет достаточно, зачем применять что-то более навороченное и тяжёлое?
- Как в bash-е удалить концевые пробелы?, pth, 16:09 , 28-Май-04 (3)
> Не удаляет ничего %-(Какая версия bash? Что говорит 'shopt extglob'? Можно извернуться и так: A=($A); A=${A[*]}; но лучше все это на perl :)
- Как в bash-е удалить концевые пробелы?, WaprOld, 16:30 , 28-Май-04 (4)
>> Не удаляет ничего %-( > >Какая версия bash? Что говорит 'shopt extglob'? GNU bash, version 2.05.0(1)-release (i386-slackware-linux-gnu) Copyright 2000 Free Software Foundation, Inc.extglob off > >Можно извернуться и так: > >A=($A); A=${A[*]}; > >но лучше все это на perl :) Не хочу почему-то ;)
|