Использованиеsed
:
$ sed 's/-[^-]*-[^-]*$//' file
foo-11.11-fo.o
bar-foo
Это удалит -X-X
в конце каждой строки в file
, где X
— любая строка, не содержащая -
.
Если строки находятся в переменной оболочки:
$ s='foo-11.11-fo.o-foo-bar'
$ printf '%s\n' "${s%-*-*}"
foo-11.11-fo.o
$ s='bar-foo-11.11-22.11'
$ printf '%s\n' "${s%-*-*}"
bar-foo
или в массиве bash
:
$ s=( 'foo-11.11-fo.o-foo-bar' 'bar-foo-11.11-22.11' )
$ printf '%s\n' "${s[@]%-*-*}"
foo-11.11-fo.o
bar-foo
Это удаляет все, что соответствует шаблону -*-*
в конце строки в переменной s
посредством сопоставления/удаления шаблона суффикса. В случае, когда s
в массиве, удаление выполняется для всех элементов массива.
У вас есть дистрибутив Kali Linux XFCE (по умолчанию ), загрузите версию GNOME, чтобы использовать GNOME Tweaks.