Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Perl: Системное программирование > как работать с каталогами типа "Мои документы"


Автор: burakov 28.7.2006, 10:59
Добрый день.
задача при помощи system заархивировать каталог "c:\Мои документы"
пишу
system ("zip.exe docs.zip с:\Мои документы");

естественно perl пытается заархиваровать сначала Мои потом Документы
пытаюсь проставить двойные кавычки

system ("zip.exe docs.zip \"с:\Мои документы\"");
Тогда он пытается заархивировать c:\Мои документы, - результат отрицательный!
потому что нужно архивировать "C:\Мои документы" (разница в двойных кавычках). 
Как передать в system ДВОЙНЫЕ КАВЫЧКИ.
ПОМОГИТЕ.
 

Автор: chaos 6.8.2006, 10:19
попробуй перед пробелом поставить \ те
Код

system ("zip.exe docs.zip с:\\Мои\ документы\\");

а на счет двойных ковыче это решается так, пример
Код

print "\"двойные ковычки\"";   #1ый вариант
print qq("двойные ковычки");  #2ой вариант


Автор: sharq 18.8.2006, 18:52
burakov, 
zip'a у меня нет, но вот с WinRAR'ом:

Код

my @result = `c:\\"Program Files"\\WinRAR\\winrar.exe my.rar c:\\"Documents and Settings"\\sharq\\"Мои документы" 2>&1 &`;
print join "\n", @result;


 smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)