Для цикла для переименования файлов с подсказкой для каждого имени файла

Я успешно запустил Ubuntu 10.10, 11.10 и 12.04 на Macbook Pro 7,1, загружающемся под совместимостью BIOS от РЕМОНТА, а также Ubuntu 12.04 на Macbook Pro 8,1 с чистой начальной загрузкой EFI от РЕМОНТА и непосредственно из диспетчера начальной загрузки EFI. Wiki Ubuntu является хорошим ресурсом для получения информации об установке и совместимости.

2
07.09.2013, 01:15
2 ответа

Просто используйте read считать одну строку из STDIN, как это.

for FILE in *; do
    echo "Rename '$FILE' to:"
    read NAME
    mv "$FILE" "$NAME"
done

Этот пример потребовал бы, чтобы Вы нажали Ctrl-C для прерывания, когда Вы сделаны, но Вы могли добавить дополнительное if случай для прерывания, например, если никакое имя не было введено.

Править: Если Вы хотите, чтобы все Ваши целевые файлы имели то же расширение файла как исходный файл (например, если файл назвали pogo.jpg Вы хотели бы, чтобы переименованный файл сохранил .jpg окончание, и не должно ввести это вручную), можно измениться mv команда в вышеупомянутом цикле к:

mv "$FILE" "$NAME.${FILE##*.}"

${FILE##*.} материал в строке выше средств:

  • ${FILE...} отобразите переменную $FILE, но …
  • ## удалите самую долгую соответствующую строку с начала (всего один # соответствует самый короткий),
  • * соответствуйте нулю или большему количеству любого символа
  • . соответствуйте литеральному периоду

Только если все выражение (*.) соответствия будут он быть удаленным, таким образом если не будет никакого периода в исходном имени файла, то Вы получите странный результат, и новое имя файла будет NEWNAME.OLDNAME.

3
27.01.2020, 21:57

Вот то, что я использовал для своего USB-PVR, прежде чем я записал сценарий, который получает имена из телевизионной программы...

#!/bin/bash

for f in "$@"
do
    echo Playing "$f"...
    mplayer "$f"
    echo That was "$f".
    read -p "New name? " newname

    if [ "$newname" != "" ]
    then
        mv -v -i "$f" PVR-"$newname".mkv
    fi

    sleep 1
done

Действительно утомительный способ переименовать файлы, если я могу сказать так...

2
27.01.2020, 21:57

Теги

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