Portál AbcLinuxu, 30. října 2025 18:21
/path/*/path/*.* ?/path/aaa/path/*.*/path/bbb/path/*.*.../path/zzz/path/*.*aaa, bbb, ..., zzz su rozne adresare resp. ich mena nie su ziadna postupnost.
Řešení dotazu:
Ano, a doplním, že to, co tar zpracuje, lze snadno zjistit použitím příkazu ls se stejnou expanzní cestou v souborovém systému. A bez zaměňování příkazu za ls v Bashi také klávesovou zkratkou C-x *, která způsobí expanzi, nebo klávesovou zkratkou C-x g, která pouze vypíše, na co by se expandovalo.
-T, --files-from=FILE
Get names to extract or create from FILE.
Takže:
find ... | tar ... -T -
ls -1 /path/*/path/*.* > list.txt
tar --files-from=list.txt ...
nebo
tar --files-from=list.txt --verbatim-files-from ...
To výše zahrne pouze uvedené soubory. To níže vyloučí uvedené soubory:
tar a --exclude=PATTERN, --exclude-ignore=FILE, --exclude-ignore-recursive=FILE, --exclude-from=FILE.
Viz odpovědi v komentářích níže (4).
tar nebo cokoli jiného), ale na použitém shellu. Dávejte pozor na to, kolik souborů tomu výrazu vyhoví. Aplikaci se předává až výsledek po expanzi, který může být příliš dlouhý. Pak se používá buď xargs, nebo se seznam souborů vypíše do souboru a ten se předá jako zdroj souborů pro aplikaci (pokud to aplikace umí – tar ano).
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.