Как создать каталог с рексом

Я хочу создать каталог с рекс, если он не существует. Я прочитал этот https://www.rexify.org/docs/rex_book/working_with_files_and_packages/working_with_files.html но не могу найти, как это сделать.

Если я отправляю файл без каталога, я получаю эту ошибку:

ERROR - upload: /usr/local/path/file.ext is not writable

Есть намеки?

1 ответ

Решение

Я думаю, что документация в книге Рекс немного старше.

Пожалуйста, посмотрите здесь https://www.rexify.org/docs/api/ или (на сегодня) самые последние документы здесь:
https://www.rexify.org/docs/api/1.4/rex/commands/file.pm.html
(он говорит, что версия 1.4, в то время как текущая версия cpan 1.6, но не имеет значения)

Итак, чтобы ответить на ваш вопрос с примером:

task "backuptask", group => "mygroup", sub { 
    #
    # 1.) define the Backup Dir (you could do it without this step)                                                                                                                        
    my $backupdir = "/tmp/backup";  
    #                                                                                                      
    # 2.) "ensure" that the file is a (existing) "directory"        
    file $backupdir, 
            ensure=> "directory", 
            owner => "myowner", 
            group => "mygroup", 
            mode => 700, 
            on_change => sub { say "File was changed";};

    #                                                                                                                                    
    # 3.) define Backup File                                                                                                                         
    my $currTimestamp = strftime('%y%m%d',localtime);                                                                                     
    my $backupfile = "$backupdir/somebackup$currTimestamp";
    #                                                                            
    # 4.) "ensure" the the file is "present" at the defined path
    file $backupfile, ensure=> "present";

    ...execute something here...

}  ;                                                                                               
Другие вопросы по тегам