Верблюжья оболочка "пунктирная" нить
Я довольно неопытен в сценариях *nix, и мне нужно взять строку со строчными словами, разделенными черточками, и преобразовать ее в новую строку с удаленными черточками, а также первую букву после каждого оригинального тире в верхнем регистре. Например, я хочу взять
one-two-three-four-five
и преобразовать его в
oneTwoThreeFourFive
Решение должно быть способно обрабатывать несколько дефисов (включая ни одного) и при необходимости может использовать другие утилиты *nix, такие как sed, awk и т. Д.
1 ответ
Решение
Perl на помощь:
echo one-two-three-four-five | perl -pe 's/-(.)/\u$1/g'
\u
подчеркивает следующий персонаж.