хочу сюда!
 

Лена

40 лет, стрелец, познакомится с парнем в возрасте 38-45 лет

Заметки с меткой «переименование»

От это я сегодня выдал умняка

Бля, ну точно я гений. От это я сегодня наконец-то выдал умняк. Недели две маялся, как присвоить файлу уникальное имя, которое сохранит расширение (если оно есть) и так, чтобы было возможно откатить переименования, да еще и обрабатывать файлы по маске и списком.

Две бессонных недели - и сегодня посетило озарение. Элегантный скрипт, которым я уже переименовал в своем компе все, что только можно (шутка).

Очень горжусь. На шестом десятке осовить новую ось, новый язык и сваять нечто реально работающее (аналогов, кстати, не нашел) - это пять с плюсом. Впрочем, в своё время аналогичная моя программулина под вынь под названием now тоже шороху наделала.


Doppler = гарный линуксоид

Если нужен реально работающий скрипт, то строчку №46 надо раскомментить. Кому нужен исходник не в виде фотки, а текстом - то вот (но строчку 46 надо-таки раскоментить)

== begin file
#!/bin/bash

E_BADARGS=65 ## Это просто номер ошибки для выхода без параметров - понты
logfile="renamed_files.log"

if [ ! -n "$1" ]; then
  echo "Для переименования необходимо указать имя одного или нескольких файлов или их маску : `basename $0` file1 file2 (*.jpg *.png *.txt)"
  exit $E_BADARGS
fi

echo "#!/bin/bash" > $logfile
echo "##                    !!! Важная иноформация !!!" >> $logfile
echo "## Этот файл был создан в результате выполнения скрипта для переименования файлов в уникальное навсегда для этого файла имя." >> $logfile
echo "## Для того, чтобы отменить преименования, просто запустите этот сценарий." >> $logfile
echo "## Чтобы его запустить, нужна минимальная Линукс-подготовка, но если её нет," >> $logfile
echo "## то просто запустите в терминале каждую строчку этого файла по очереди" >> $logfile
echo "## или запустите данный файл из терминала. Типа [ bash renamed_files.log ]" >> $logfile
echo "## В любом случае (даже если Вы конченный дебил) тут содержатся имена оригинальных и переименованных файлов и флаг вам всем в очумелые ручки" >> $logfile


filelist=$*

for filename in $filelist ; do

    change_str=( `stat -c %y $filename` ) ## время последней модификации файла в виде 2015-06-27 16:07:54.243461522 +0300
    change_str=${change_str[0]}"-"${change_str[1]} ## объединяем два первых параметра (отсчет с нуля)
    change_str=${change_str//:/\^} ## заменяем : на ^

    newname=$change_str
    extension=${filename##*\.}  ## получаем расширение после последней точки (если она есть)

    if [ ${#extension} -ge ${#filename} ] ; then
        extension="" ## если точки нет, то нет и расширения
    else
        extension="."$extension ## иначе добавляем перед расширением точку
    fi

    newname=$newname$extension

    echo $filename " переименован в " $newname

    echo "mv $newname $filename" >> $logfile

    ## !!!!!!!!!! следующую строчку в реально работающем скрипте нужно раскомментить
    #mv $filename $newname
    ## !!!!!!!!!!

done

echo "    "
echo "    "
echo "                  переименование файлов закончено"
echo "          ============================================"
echo "для того, чтобы отменить преименования, откройте log-файл (а по сути готовый скрипт) "$logfile ", для чего необходимо минимальное знание Линукса, и прочтите хрень, которая внутри его содержится"
echo "                   ----- C уважением, Ваш Допплер -----"

exit
=== end оf file


Map

Unlocker 1.8.7 Portable

   Unlocker - небольшая утилита, которая позволяет разблокировать находящиеся в использовании файлы, тем самым давая возможность осуществлять над ними дальнейшие действия. Кроме простой разблокировки различных запущенных процессов и открытых папок, Unlocker позволяет осуществить наиболее часто выполняемые операции над объектами: переименование, удаление, перемещение.    Unlocker позволяет удалить файлы и папки, которые обычным способом удалить не удается (когда системой выдается сообщение, что файл удалить невозможно, так как он используется другим приложением).    Программа добавляет в контекстное меню операционных систем Windows новую функцию, использовав которую вы снимает запрет на работу с подобными файлами. Операционка Windows XP, Vista Интерфейс Английский, Русский

Скачать программу

Рейтинг блогов

100%, 1 голос

0%, 0 голосов
Авторизируйтесь, чтобы проголосовать.