Переименовать файлы в подкаталоги

«Таблицы страниц» на самом деле являются разновидностью древовидной структуры. Например. см. «Четыре -таблицы страниц уровня» [LWN.net, 2004].

Верхний уровень — это одна страница (4096 байт ). Записи, отображающие диапазон ядра, имеют одинаковые значения во всех процессах и, следовательно, являются общими. Временные сопоставления ядра происходят на более низком уровне дерева, поэтому их нужно изменять только внутри общих таблиц страниц ядра, и им не нужно отдельно изменять каждую таблицу страниц процесса.

По крайней мере, это мой обзор высокого -уровня. У меня нет всех слов.

Вышеупомянутое перекрестие -опубликовано из моего ответа здесь:https://unix.stackexchange.com/a/513184/29483

0
25.09.2020, 08:06
1 ответ

Если вы используете Perl -на основе rename, ничто не мешает вам вызвать mkdir()для создания недостающих каталогов:

rename --verbose '
    s|^\[(....)\](.*)\.(.*)|$2 ($1)/$2 ($1).$3| &&
    mkdir("$2 ($1)")' *

Это то же выражение Perl, которое вы используете, с добавленным вызовом mkdir()в конце для создания каталога, если выражение совпадает.

Верна ли исходная замена или имеет ли она смысл, я не знаю (Я не знаю, какие у вас типы имен файлов ). Дело в том, что, поскольку выражение является обобщенным выражением Perl, вы можете использовать любой код Perl, если$_(в качестве переменной по умолчанию )в конце установлено имя результирующего файла.

1
18.03.2021, 23:02

Теги

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