Сегодня 4 мая, суббота ГлавнаяНовостиО проектеЛичный кабинетПомощьКонтакты Сделать стартовойКарта сайтаНаписать администрации
Поиск по сайту
 
Ваше мнение
Какой рейтинг вас больше интересует?
 
 
 
 
 
Проголосовало: 7272
Кнопка
BlogRider.ru - Каталог блогов Рунета
получить код
muhas.ru - Заметки аскетичного гика
muhas.ru - Заметки аскетичного гика
Голосов: 1
Адрес блога: http://muhas.ru
Добавлен: 2008-11-19 17:05:29 блограйдером muhas
 

vils и vimv — переименование файлов с помощью текстового редактора

2011-05-11 23:58:58 (читать в оригинале)

переименование — vils и vimvvils — это скрипт на zsh позволяющий переименовывать файлы из текстового редактора.
Работает до ужаса просто, чем и подкупает...
vils [file ...]
Без указания файлов открывает для редактирования список файлов текущей директории.
Вот пример того как будет выглядеть текстовый файл
0001 filename1
0002 filename2
0003 filename3

Редактирую имя файла и сохраняя текстовый документ мы выполняем переименование. Проще простого, ну а текстовый редактор указанный в $EDITOR может позволить сделать что-то вроде массового переименование по шаблону или какие-нибудь другие чудеса, хотя использовать vils для редактирования имени нескольких файлов мне кажется удобнее всего.
Страница vils (скачать сам скрипт)

Есть ещё схожая по функционалу программа vimv (Vi move оффсайт) написанная на python и работающая в духе vim, хотя можно использовать и любой другой редактор. Отображает в текстовом редакторе список аналогично как и vils, но не показывает номера файлов (только их имена). Так же vimv немного функциональнее, к примеру, в списке файлов не отображает каталоги, ведь их он переименовывать как и vils не умеет.
Так же у vimv есть пара полезных опций придающих ему дополнительный функционал отсутствующий в vils:
  • -a — позволяет показывать скрытые файлы
  • -v, --verbose — показывает сделанные изменения после закрытия редактируемого файла
  • -e EDITOR, --editor=EDITOR — для указания редактора, который к сожалению нельзя внести в какой-нибудь конфиг или переменную окружения, так что придется указывать редактор каждый раз если не хочется пользовать vi (хотя заменить редактор в строке default='vi' в файле программы никто не запрещает)

Две очень схожих по функционалу консольных полезняшки — я разрвался в выборе, ибо vils может переименовывать список файлов, а vimv может принимать параметрами список каталогов файлы в которых надо переименовать. Но два одновременно пользовать не удобно, лишняя команда в памяти, посему написал небольшую обёртку для одновременного использования двух этих полезняшек, дабы не задумываться о том какую сейчас лучше запустить
#!/bin/sh
# враппер для переименовальщиков vils и vimv            #
# упрощающий одновременную работу с обоими              #
#########################################################
#            by muhas <muhas [(at)] muhas.ru>           #
#########################################################

# мало ли у вас они по другому названы
# к примеру vimv может быть vimv.py
# или вообще в переменной $PATH этих двух полезняшек нет
VILS="vils"
VIMV="vimv"

if [ .$1 = ."" ]; then 
	#если нет параметров то вызываем то что больше по нраву
	$VIMV
else
	if [ -d $1 ]; then
		# если первая опция окажится каталогом, то тогда лучше пользовать vimv
		$VIMV $@
	elif [ -f $1 ]; then
		# если первой опцией файл пойдет
		$VILS $@
	else
		# ну а если не файл и не каталог, то видимо какая-то опция, а опции у нас только vimv понимает
		$VIMV $@
	fi
fi
Надеюсь со временем vimv возымеет возможность редактирования списка файлов передаваемых в параметрах и надобность в этом врапере отпадет...

Тэги: bash, linux, rename, shell, tip, vim, zsh

 


Самый-самый блог
Блогер ЖЖ все стерпит
ЖЖ все стерпит
по сумме баллов (758) в категории «Истории»


Загрузка...Загрузка...
BlogRider.ru не имеет отношения к публикуемым в записях блогов материалам. Все записи
взяты из открытых общедоступных источников и являются собственностью их авторов.