Я пытаюсь написать bash script, который содержит функцию, поэтому при задании файла .tar
, .tar.bz2
, .tar.gz
и т.д. он использует tar с соответствующими переключателями для распаковки файла.
Я использую if elif, затем инструкции, которые проверяют имя файла, чтобы увидеть, с чем он заканчивается, и я не могу заставить его соответствовать метасимволам регулярных выражений.
Чтобы сохранить постоянное переписывание script, я использую "тест" в командной строке, я думал, что приведенное ниже утверждение должно работать, я пробовал каждую комбинацию скобок, кавычек и метаматератов, и все равно это не удается.
test sed-4.2.2.tar.bz2 = tar\.bz2$; echo $?
(this returns 1, false)
Я уверен, что проблема проста, и я везде искал, но я не могу понять, как это сделать. Кто-нибудь знает, как я могу это сделать?