мне удалось получить md5sum файлов внутри архива без использования файловой системы благодаря:получить контрольную сумму файлов внутри архива дегтя на удаленном хосте
tar tjf '/home/adup/mybackup.tar.bz2' | sort | grep -v '/$' |
(while read filename;
do md5=$(tar xjOf '/home/adup/mybackup.tar.bz2' $filename | md5sum | awk '{print $1}');
echo "$md5 $filename";
done)
К сожалению, то, что мне нужно это делать на удаленный хост через SSH как:
ssh 192.9.202.44 tar tjf '/home/adup/mybackup.tar.bz2' | sort | grep -v '/$' |( while read filename; do md5=$(tar xjOf '/home/adup/mybackup.tar.bz2' $filename | md5sum | awk '{print $1}'); echo "$md5 $filename"; done)
Но так это не работает, один из команды дегтя интерпретируется локально и дать мне такую ошибку:
tar (child): /home/adup/mybackup.tar.bz2 : no such file
Пожалуйста, кто-нибудь может сказать мне, как действовать?
Спасибо заранее,
Отлично! Часы, которые я пытался добиться, и вы сделали это через 5 минут. Большое вам спасибо за адаптацию. Я попытался процитировать всю команду, но не для того, чтобы избежать $ символов, это был трюк. РЕШИТЬ! –
Я делал что-то подобное пару недель назад, поэтому я хорошо знал все ловушки :) Рад, что я мог бы помочь. Не возражаете ли вы пометить ответ как правильный? Благодарю. – piokuc