#shell
#оболочка
Вопрос:
у меня есть tar-файл «test.tar.gz ‘. теперь я хочу получить имя «test» после удаления «test.tar.gz ‘. В сценарии оболочки, как получить это.
Ответ №1:
Чтобы удалить расширение из имени файла, используйте basename
:
basename test.tar.gz .tar.gz
С принтами test
Но это всего лишь базовое имя архива. Это не всегда имя любого файла или каталога, который tar
создается. Архив tar может содержать любые имена файлов. Если они вам нужны, используйте tar tf
для перечисления содержимого архива.
Ответ №2:
Используйте что-то вроде:
file="test.tar.gz"
tarfilename=${file%.tar.gz}
прочитайте об этом man bash
найдите переменное расширение.
Комментарии:
1. должно быть
${file%.tar.gz}
с точкой перед «tar»