Wielkie łańcuchy w sed lub awk

Mam trzy typy łańcuchów, które chciałbym wykorzystać w skrypcie bash. Uznałem, że sed / awk będzie moim najlepszym wyborem, ale nie jestem pewien. Jaki jest najlepszy sposób, biorąc pod uwagę następujące wymagania?

pojedyncze słowo
na przykładtaco -> Taco

wiele słów rozdzielonych myślnikami
na przykładmy-fish-tacos -> My-Fish-Tacos

wiele słów oddzielonych podkreśleniami
na przykładmy_fish_tacos -> My_Fish_Tacos

questionAnswers(6)

yourAnswerToTheQuestion