2013-03-03 17 views
17

Jestem nowym użytkownikiem polecenia tar. Mam wiele plików w katalogu: 1_1_1.txt, 1_1_2.txt, 2_1_1.txt, 2_1_2.txt ..Jak wykonać tar plik zestawu?

wiem, że to polecenie:

tar cf file.tar *.txt 

który będzie tar wszystkie cztery pliki do file.tar. Ale muszę tar 1_1_1.txt i 1_1_2.txt w jednym pliku tar i 2_1_1.txt i 2_1_2.txt do innego pliku tar. Jak mogę to zrobić?

+4

Cóż, pan spróbować? –

+0

używasz pętli, jeśli istnieje wzorzec w nazwach plików i wiele plików do utworzenia –

+2

tar xzf wyodrębni archiwum. masz na myśli tar czf, który utworzy zgrupowane archiwum tar: .tar.gz, cf utworzy .tar – iain

Odpowiedz

25

Aby po prostu utworzyć plik z tymi plikami, wystarczy:

tar cf ones.tar 1_*.txt 
tar cf twos.tar 2_*.txt 

Najprawdopodobniej chcesz skompresować archiwów, więc należy wybrać opcję z:

tar czf ones.tar.gz 1_*.txt 
tar czf twos.tar.gz 2_*.txt 

przeglądać zawartość swoich tarballs z tar tf <tarball>.

+0

Dzięki. To jest to, czego potrzebuję. –

2

Spróbuj tego:

find . -maxdepth 1 -name "*.txt" -exec tar -rf test.tar {} \;

Jeśli chcesz dołączyć wszystkie pliki w tym podfolderów, usunąć "-maxdepth 1"

można wykorzystać wzory jak "1_1 * .txt"

4

Można po prostu użyć poniższego polecenia

tar cf file1.tar 1_1_1.txt 1_1_2.txt 

tar cf file2.tar 2_1_1.txt 2_1_2.txt 
Powiązane problemy