Mam ciąg tak:usunąć ostatnie 14 cyfr z ciągu znaków i podkreślenia, jeśli istnieje 14 cyfr
data-c(huk24-small1);divider-bin-1.4.4;divider-conf-1.3.3-w(1,16);storage-bin-1.5.4;storage-conf-1.5.0-w(1);worker-bin-4.5.1;worker-conf-4.4.1-c(huk24)_20130620200658
gdzie datownik z 14 cyfr i podkreślenia powinny zostać usunięte. Tak powinno to wyglądać tak:
data-c(huk24-small1);divider-bin-1.4.4;divider-conf-1.3.3-w(1,16);storage-bin-1.5.4;storage-conf-1.5.0-w(1);worker-bin-4.5.1;worker-conf-4.4.1-c(huk24)
Jak mogę to osiągnąć w skrypcie bash? Pamiętaj, że usunięcie powinno nastąpić tylko wtedy, gdy naprawdę jest podkreślenie i 14 cyfr.
+1 dla czytelności! ale proszę użyj cytatów: 'echo" $ str "| sed 's/_ [0-9] \ {14 \} $ // '' # przykład zawiera str zawierający; i inne znaki –