2010-04-08 2 views
0

У меня есть следующий работаеткак включить файлы определенного формата, а называя папку

tar -pcvf base.tar input/myPacket/my2 --exclude-vcs input/myPacket/my3/*.bmp 

Когда у меня есть каталоги с пробелами, как «входного файл», то я включать пути в кавычках и включает в себя путем оленьей кожей работы для * .bmp

tar -pcvf base.tar "input file/myPacket/my2" --exclude-vcs "input file/myPacket/my3/*.bmp" 

Спасибо,

ответ

1

Попробуйте это:

tar -pcvf base.tar "input file/myPacket/my2" --exclude-vcs input*file/myPacket/my3/*.bmp 

Вместо того, чтобы пытаться бороться с силовыми пространствами в каталогах UNIX, обходите его самым простым способом.

+0

так что вы имеете в виду * .bmp не работает, если я ставлю кавычки? – superstar

+1

Проблема не в файлах 'bmp', это путь. Вы помещаете входной файл '/ myPacket/my3/* .bmp' 'изначально в кавычки, чтобы попытаться избежать конфликта с пространством, правильно? UNIX ** ненавидит ** пробелы в именах файлов и каталогах. Итак, если ваш '' входной файл/myPacket/my3/* .bmp '' все еще не работает с кавычками, попробуйте вместо этого использовать версию 'input * file/myPacket/my3/* .bmp'. '*' Является частью регулярного выражения, которое означает «match inputfile inputxyzfile inputaa ... aaafile». –

+0

Я имел в виду * .something (например, * .bmp). Я понимаю, что вы говорите. На самом деле мои пути динамичны, но я предполагаю, что могу реализовать *, который является частью регулярного выражения (согласно вашему сообщению). Спасибо чувак!! – superstar