Анаса,
Я думаю, вам нужно использовать:
tar -cPf myconfigs.tar -T myconfigs.list
вместо ваших "кошек". cat должен работать, если вы правильно избегаете имена файлов внутри, но -T лучше.
ОБНОВЛЕНО (в ответ на свой вопрос в комментариях Вопрос в): Я не могу комментировать в вашем вопросе (не хватает репутации), так что я решил улучшить свой ответ вместо этого.
Расширение тильды (~) - это оболочка, смола не поддерживает ее. Однако, чтобы достичь того, чего вы хотите достичь, вы можете использовать следующий трюк:
- использовать относительные пути в файле myconfigs.list (относительно домашнего каталога):
.config/chromium/Default/Bookmarks
.config/chromium/Default/Login Data
.config/chromium/Default/Login Data-journal
- запустить деготь таким образом, что он изменяет каталог для вашего дома при запуске:
tar -cPf myconfigs.tar -C ~/ -T myconfigs.list
Хорошо, я пошел вперед и создал пример сеанса, иллюстрирующий это:
[email protected]:~ # useradd -m galaxy
[email protected]:~ # su - galaxy
[email protected]:~ $ mkdir -p {1,2}/{3,4}/{5,6,7}
[email protected]:~ $ find . -xdev -type d -exec touch '{}/file.txt' \;
[email protected]:~ $ cat <<EOF> include.lst
> 1/3
> 1/4/5/file.txt
> 1/4/7
> 2/file.txt
> EOF
[email protected]:~ $ cd 2/3/6
[email protected]:~/2/3/6 $ tar cjSpf ~/sample.tar.bz2 -C ~/ -T ~/include.lst
[email protected]:~/2/3/6 $ cd
[email protected]:~ $ tar tjvf sample.tar.bz2
drwx------ galaxy/galaxy 0 2014-02-19 04:10 1/3/
-rw------- galaxy/galaxy 0 2014-02-19 04:10 1/3/file.txt
drwx------ galaxy/galaxy 0 2014-02-19 04:10 1/3/7/
-rw------- galaxy/galaxy 0 2014-02-19 04:10 1/3/7/file.txt
drwx------ galaxy/galaxy 0 2014-02-19 04:10 1/3/6/
-rw------- galaxy/galaxy 0 2014-02-19 04:10 1/3/6/file.txt
drwx------ galaxy/galaxy 0 2014-02-19 04:10 1/3/5/
-rw------- galaxy/galaxy 0 2014-02-19 04:10 1/3/5/file.txt
-rw------- galaxy/galaxy 0 2014-02-19 04:10 1/4/5/file.txt
drwx------ galaxy/galaxy 0 2014-02-19 04:10 1/4/7/
-rw------- galaxy/galaxy 0 2014-02-19 04:10 1/4/7/file.txt
-rw------- galaxy/galaxy 0 2014-02-19 04:10 2/file.txt
[email protected]:~ $
Этот должен дать вам начать :)
@galaxy, @anubhava: Кстати, я пытаюсь заменить '/ home/anas/'с' ~/', но я не смог, любое решение, пожалуйста? –