Portál AbcLinuxu, 11. května 2025 09:56
Potřebuji poradit s podmínkou, jestli zadané jméno souboru je opravdu tar-gzip archiv. S tím, že nemohu rozpoznávat podle přípony! Zatím testuji, jestli soubor existuje.
jmeno_souboru=$1
if [ -e -s "$jmeno_souboru" ] ;then
mkdir /tmp/aaa
tar -xzf "$jmeno_souboru" -C /tmp/aaa
cd /tmp/aaa
sed -i "s/${hledane_slovo}/${zamenene_slovo}/g" /tmp/aaa/`cyklu$
tar -czf "$puvodni_adresar"/"$jmeno_souboru" `cyklus`
rm -r /tmp/aaa
else
echo "Soubor neexistuje">&2 return 1
fi
Řešení dotazu:
tar -tzf tarfile > /dev/null
tar tzf subor.s.divnou.priponou if [ $? -eq 0 ]; then echo dobry tar.gz else echo zly tar.gz fiNeodporúčam použiť na veľké súbory.
tar -tkf subor.s.divnou.priponou
vše ostatní v navrženém skriptu je OK.
tar --test-label -f divny.subor if [ $? -eq 0 ]; then ... fi file divny.subor | grep -E 'tar archive|gzip compressed data' if [ $? -eq 0 ]; then ... fiTen prvy mi ale pride spolahlivejsi. Pekny den.
if tar blablabla ; then else fi
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.