спонсори:

Масова транслітерація кириличних назв файлів в linux - unix - gnome nautilus batch


Для масового перейменування файлів в *nix операційних системах коректного інструменту не придумано. Викладаю скрипт, який дозволяє по правій кнопці мишки робити автоматичне перейменування всіх виділених, або всіх файлів в теці перебування з кирилиці на трансліт. Підтримується українська і російська мови
#!/bin/bash shopt -s nullglob for NAME in * ; do TRS=`echo $NAME | sed "y/абвгґдезиійклмнопрстуфхцы /abvggdeziijklmnoprstufxcy_/"` TRS=`echo $TRS | sed "y/АБВГҐДЕЗИІЙКЛМНОПРСТУФХЦЫ/ABVGGDEZIIJKLMNOPRSTUFXCY/"` TRS=${TRS//ч/ch}; TRS=${TRS//Ч/CH} TRS=${TRS//ш/sh}; TRS=${TRS//Ш/SH} TRS=${TRS//ё/jo}; TRS=${TRS//Ё/JO} TRS=${TRS//ж/zh}; TRS=${TRS//Ж/ZH} TRS=${TRS//щ/sh\'}; TRS=${TRS///SH\'} TRS=${TRS//э/je}; TRS=${TRS//Э/JE} TRS=${TRS//ю/ju}; TRS=${TRS//Ю/JU} TRS=${TRS//я/ja}; TRS=${TRS//ї/ji} TRS=${TRS//Ї/JI}; TRS=${TRS//є/je} TRS=${TRS//Є/JE}; TRS=${TRS//Я/JA} TRS=${TRS//ъ/\`}; TRS=${TRS//\`} TRS=${TRS//ь/\'}; TRS=${TRS//\'} if [[ `file -b "$NAME"` == directory ]]; then mv -v "$NAME" "$TRS" cd "$TRS" "../$0" cd .. else mv -v "$NAME" "$TRS" fi done
створити скрипт із назвою trans.sh в теці ~/.gnome2/nautilus-scripts зробити його виконуваним!!! І в меню правої кнопки миші з'явиться відповідний пункт, при натисканні на який - скрипт відпрацює масове перейменування.

Trackback URL для цього допису

http://itua.name/uk/trackback/950
Share this

Об'єднати вміст Об'єднати вміст

Propeople Expert

Партнери

Останні коментарі

експерименти

Rambler's Top100