Получение имени файла внутри rar без unrar
Пытаюсь собрать скрипт bash, но я застрял в этом. RAR разделен на x файлов, внутри RAR есть 1 отдельный файл. Что я делаю, как показано ниже:
cd $dir
for rarfile in $(find -iname "*.part1.rar")
do
echo "Rar file: " $rarfile >> $dir/execute.log
name = $(unrar lb "$rarfile")
echo "Name of file inside rar container: " $name >> $dir/execute.log
extension ="${name##*.}"
echo "Extension: " $extension >> $dir/execute.log
filename = ${name%.*}
echo "Name: " $filename >> $dir/execute.log
# unrar x -y -o- $rarfile $uprar_dir
done
Excucute.log, как показано ниже:
Rar file: ./file.part1.rar
Name of file inside rar container:
Extension:
Name:
Кажется, не могу заставить $name работать. Унрар, однако, работает нормально, как и должно. Пожалуйста, помогите.
1 ответ
Решение
В bash для присвоения значения переменной у вас не должно быть пробелов, т.е.
name=$(unrar lb "$rarfile")
вместо:
name = $(unrar lb "$rarfile")