Я пытаюсь сжать папку в архив .7z. Эта папка содержит символические ссылки на некоторые другие вещи вне папки (как каталоги, так и файлы).
Видимо 7zip просто архивирует саму ссылку, а это не то, что я намеревался. Есть ли способ сообщить 7zip, что я хочу, чтобы он архивировал материал, на который он ссылается, а не саму ссылку? (То есть, если есть имя символической ссылки, foo
которое указывает на C:\stuff\foo
, я хочу, чтобы оно включало C:\stuff\foo
каталог в архив вместо foo, а не 0-байтовую символическую ссылку.))
Есть ли разумный обходной путь, кроме добавления файлов и папок, о которых идет речь? Существует около 10000 файлов, на которые ссылаются через символические ссылки, поэтому добавление их всех по отдельности займет несколько часов ... Может быть, есть программа, которая создает промежуточную папку с реальными файлами в ней, а затем передает ее в 7zip. Или просто архиватор, который лучше обрабатывает символические ссылки.
Я использую Windows Vista. Все ссылки являются символическими ссылками (например, созданы с помощью mklink link target
и mklink /D link target
).
РЕДАКТИРОВАТЬ:
dir
вывод команды для меньшего тестового каталога:
C:\...>dir
Volume in drive C is OS
Volume Serial Number is 0A3D-CD6E
Directory of C:\...
09/04/2010 18:12 <DIR> .
09/04/2010 18:12 <DIR> ..
09/04/2010 18:10 975 real file.txt
09/04/2010 18:11 <SYMLINK> test file.txt [..\test file.txt]
2 File(s) 975 bytes
4 Dir(s) 5,214,355,456 bytes free
Создание 7z архива этого с 7zip приводит real file.txt
к включению, но test file.txt
добавляется как 0-байтовый файл, хотя файл, на который ссылаются, существует и имеет размер 50 КБ.