
Я хочу распаковать tar в определенную папку, используя random (или что-то еще), потому что содержимое tar похоже
В Win/Batch используется случайный метод:
SET /A num=%random% %%100
for /d /r . %%d in (%folder%) do @if exist "%%d" ren "%%d" folder%num%
Но в Linux/bash (???)
Вот мой случай:
папка/1.tar 2.tar 3.tar.gz
cat *.tar.* *.tgz | tar -C folder/$RANDOM -zxvf - -i
пример
folder/
1/content of 1.tar
2/content of 2.tar
3/content of 3.tar.gz
решение1
Это достигает того, чего вы хотите.
for F in *.tar *.tgz; do R=$RANDOM ; mkdir folder/$R ; tar -C folder/$R -zxvf $F -i; done