Заменить определенную последовательность символов внутри имен файлов

Если функция «Спасение и восстановление» настроена аналогично в T500, как в предыдущих ThinkPad серии T, ThinkWiki содержит подробные инструкции о том, как установить дистрибутив Linux, сохраняя при этом параметр восстановления во время загрузки.

Метод, который я успешно использовал на T60, заключался в том, чтобы установить загрузчик GRUB в загрузочный сектор раздела вместо MBR, сохраняя исходный MBR неповрежденным. После этого остается только, чтобы система фактически загружала GRUB из любого места, где она была установлена. С новыми версиями Rescue and Recovery, которые могут быть такими же легкими, как простое указание правильного раздела как активного. Другой вариант - добавить запись для него в загрузчик Windows (при условии, что вы сохраните раздел Windows).

1
задан 20 March 2015 в 14:43

2 ответа

В скрипте python:

#!/usr/bin/env python3
import os
import shutil
import sys

dr = sys.argv[1]
replace = ["!", "!!", "!!!", "!!!!"]

for f in os.listdir(dr):
    test = [f.startswith(s) for s in replace]
    if test.count(True) > 2:
        shutil.move(dr+"/"+f, dr+"/"+"0"+f.replace("!", ""))
    elif 0 < test.count(True) < 3:
        shutil.move(dr+"/"+f, dr+"/"+"1"+f.replace("!", ""))

Он заменит ведущие !!!! и !!! на 0 и !! и ! на 1, если ! происходит только в начале имени.

Чтобы использовать его

, вставьте скрипт в пустой файл, сохраните его как rename.py Запустите его из окна терминала командой :
python3 /path/to/rename.py '<directory>'
где <directory> - каталог, содержащий файлы для переименования.
2
ответ дан 23 May 2018 в 22:13

Вы также можете использовать команду rename на основе perl, например

rename -vn -- 's/^!{1,2}(?!!)/0/' *

, чтобы соответствовать одному или двум символам !, за которыми не следует ! в начале (^), имени и заменить 0; и

rename -vn -- 's/^!{3,4}(?!!)/1/' *

для сопоставления трех или четырех символов !, за которыми не следует ! в начале (^) имени, и s ubstitute [ f11].

ПРИМЕЧАНИЕ: переключатель -n позволяет вам выполнять «сухой ход» без фактического изменения имен - сначала проверьте выражения и удалите n, если вы хотите продолжить.

1
ответ дан 23 May 2018 в 22:13

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

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