![]() |
Модераторы: ginnie, korob2001 |
![]() ![]() ![]() |
|
heluna |
|
|||
Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 5.8.2008 Репутация: нет Всего: нет |
Привет всем,
извеняюсь сразу же за наверное уже не раз заданый здесь вопрос (хотя я к сожалению не нашла, то что искала) существует перл- скрипт, при его запуске, пользователь должен указать адрес папки с которой он хочет работать. Много раз встречала такие примеры............ и попыталась использовать его у себя, но выходят постоянно ошибки, можете подсказать, что я делаю не правильно.... может, я чего-то не знаю и не передаю в начале???? Спасибки за ранее всем...........
Это сообщение отредактировал(а) heluna - 24.3.2010, 22:03 |
|||
|
||||
RomanCh |
|
|||
Новичок Профиль Группа: Участник Сообщений: 16 Регистрация: 23.8.2009 Репутация: нет Всего: нет |
Честно говоря все телепаты из наших краёв уехали и потому я не очень представляю что (и зачем?) ты пытаешься сделать, и что за ошибки у тебя там выскакивают. Но мне кажется что на правильные мысли тебя может навести нечто вроде этого простого кода:
|
|||
|
||||
heluna |
|
|||
Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 5.8.2008 Репутация: нет Всего: нет |
))))))))))))ok, проблема в том, что я не могу передать pаth через dos-prompt, этот код который ты мне написал к сожалению, тоже не идёт, хотя я думаю, ты проблему понял и без уехавших телепатов)))))). А мой вопрос был, как передать в этом случае path через dos-prompt))))))))))
|
|||
|
||||
amg |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1145 Регистрация: 3.8.2006 Где: Новосибирск Репутация: 9 Всего: 50 |
heluna, в Вашем скрипте строка
my $srcDir = <STDIN>; означает, что скрипт хочет получить название директории $srcDir со стандартного входа. Это можно сделать так: echo "c:/src/Dir" | script.pl Если упомянутую выше строку заменить на my $srcDir = shift; то синтаксис вызова скрипта будет проще: script.pl "c:/src/Dir" Это сообщение отредактировал(а) amg - 25.3.2010, 07:41 |
|||
|
||||
krypt3r |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 359 Регистрация: 9.6.2009 Репутация: 1 Всего: 16 |
В переменной $path будет переданное из командной строки значение (параметр), которое можно использовать далее в скрипте. Кроме этого, есть модули Getopt::Std и Getopt::Long. |
|||
|
||||
RomanCh |
|
||||||
Новичок Профиль Группа: Участник Сообщений: 16 Регистрация: 23.8.2009 Репутация: нет Всего: нет |
Эээ... Интересно, что я делаю не так? Linux:
И конечно же всеми любимый Windows!
Можно хотя бы узнать что "не идёт" в моём примере? Я в растерянности, мои способности к телепатии исчерпаны. |
||||||
|
|||||||
heluna |
|
|||
Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 5.8.2008 Репутация: нет Всего: нет |
Спасибо всем за ответы....вы все супер)))) Роман извени пожалуйсто, всё идёт, спасибки огромное.........))
Можно следующий вопрос..... проверяя эту директорию, я пробегаю все находящиеся там даты, и все даты старше года я переношу в другую папку Backup, при этом я хочу создать текстфайл, где будут стоять все названия(filename,dirname), время создачи файла или директории(lastMod) и размеры(size) в КБ от дат, которые я перенесла в другую папку. Выдача имён не создала мне больших трудностей, но вот размер дат и время я выдать не могу.....так как я поняла, вы тут все умнички, такчто наверное быстренько ошибку найдёте, где я опять ступила....... ещё раз спасибо!!!
Это сообщение отредактировал(а) heluna - 26.3.2010, 03:42 |
|||
|
||||
ginnie |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1287 Регистрация: 6.1.2008 Где: Москва Репутация: 6 Всего: 49 |
heluna, а что скрипт выдает вместо даты? Должен выдавать целое число - unixtime, которое можно перевести в любой удобный вид.
Для получения размера, надо, наверное, написать
Это сообщение отредактировал(а) ginnie - 26.3.2010, 16:35 -------------------- Написать код, понятный компьютеру, может каждый, но только хорошие программисты пишут код, понятный людям. (Мартин Фаулер. Рефакторинг) |
|||
|
||||
heluna |
|
|||
Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 5.8.2008 Репутация: нет Всего: нет |
Ок, спасибо за ответы....... не признаёт мой скрипт эту функцию size()...... Замудрила я что-то в своём скрипте, зайду к этой проблеме с другой стороны, попробую переписать скрипт........ :dash1 всем спасибо. Я ещё не раз обращусь к вашей помощи.....))
|
|||
|
||||
ginnie |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1287 Регистрация: 6.1.2008 Где: Москва Репутация: 6 Всего: 49 |
heluna, не сложно будет показать нам текст сообщения об ошибке про функцию size()?
-------------------- Написать код, понятный компьютеру, может каждый, но только хорошие программисты пишут код, понятный людям. (Мартин Фаулер. Рефакторинг) |
|||
|
||||
heluna |
|
|||
Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 5.8.2008 Репутация: нет Всего: нет |
Can´t call method "size" on an undefined value at Programme.pl line 123, <STDIN> line1
ну вот что-то в этом роде..... |
|||
|
||||
ginnie |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1287 Регистрация: 6.1.2008 Где: Москва Репутация: 6 Всего: 49 |
heluna, попробуйте так:
-------------------- Написать код, понятный компьютеру, может каждый, но только хорошие программисты пишут код, понятный людям. (Мартин Фаулер. Рефакторинг) |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Perl: Системное программирование" | |
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Perl: Системное программирование | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |