Как переместить файлы в жемчуг рекурсивно

Как я могу переместить все файлы в каталог к предыдущему каталогу в Perl с помощью системной команды?

Я попробовал следующий метод, и он показал ошибку

system('/bin/mv "test/*" , "./"');

bash: syntax error near unexpected token '/bin/mv "test/*" , "./"''

Помогите.

0
задан 22 July 2016 в 11:33

1 ответ

Perl имеет собственные методы для этого. От CPAN:

fmove ()

Копии файл затем удаляет оригинал. Можно настроить путь, в котором находится исходный файл согласно $RemvBase.

dirmove ()

Использование dircopy () для копирования каталога затем удаляет оригинал. Можно настроить путь, в котором находится исходный каталог согласно $RemvBase.

rmove ()

Как rcopy (), но вызовы fmove () или dirmove () вместо этого.

И 1, который использует globbing:

rmove_glob ()

Как rcopy_glob (), но вызовы rmove () вместо rcopy ()

Это упоминает...

rcopy_glob ()

Эта функция позволяет Вам указать шаблон, подходящий для шарика perl () как первый аргумент. Впоследствии каждый путь, возвращенный шариком perl (), получает rcopy () ied.

Это возвращается и массив, объекты которого являются судьями массива, которые содержат возвращаемое значение каждого rcopy () вызов.

Это вызывает поведение как будто $File:: Копия:: Рекурсивный:: CPRFComp верен.

<час>

От примеров в ссылке:

rmove('foo/bar/baz', '/etc/');
# "baz" is removed from foo/bar after it is successfully copied to /etc/
2
ответ дан 28 September 2019 в 22:34

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

Похожие вопросы: