Здесь уже существует довольно много ответов, но я думал, что подброшу простой
rename 'file.' 'file.000' file.?.png
rename 'file.' 'file.00' file.??.png
rename 'file.' 'file.0' file.???.png
rename
утилита прибывает стандарт в каждый дистрибутив, о котором я знаю. Не столь необычный, как некоторые из других решений здесь, но простой легко помнить.
Первая строка берет file.1.png
и преобразовывает его в file.0001.png
.
Вторые преобразования file.10.png
кому: file.0010.png
, и третье делает file.100.png
в файл 0100.png.
4 цифры уже сделаны.
Статьи, которые Вы нашли, несколько устарели. Существует теперь легкий метод для присвоения имен к сетевым интерфейсам через Udev.
На Debian и производных (включая Ubuntu), высматривайте названный файл /etc/udev/rules.d/70-persistent-net.rules
. Этот файл создается /lib/udev/rules.d/75-persistent-net-generator.rules
с помощью сценария /lib/udev/write_net_rules
. Каждый раз udev видит новое сетевое устройство, оно присвоит ему новый номер и добавит то число к /etc/udev/rules.d/70-persistent-net.rules
. Тем путем интерфейсные числа являются персистентными через перезагрузки и сохранятся после переустановки, если Вы восстанавливаете /etc
.
(Если Ваше распределение не поставляет эти файлы, ищите их в пакете Debian.)
Если Вы хотите дать понятное имя интерфейсу, и Вы имеете /etc/udev/rules.d/70-persistent-net.rules
, все, что необходимо сделать, должно отредактировать тот файл и изменение "eth0"
кому: "ethLan"
. Выполненный udevadm trigger --sysname eth0
переименовать существующее устройство после редактирования файла (я думаю, что это требует закрытия интерфейса). Если у Вас нет того файла, можно записать короткое соответствие себе (сложные сценарии, которые добавляет Debian, только, чтобы сделать это автоматически):
SUBSYSTEM=="net", DRIVERS=="?*", ATTR{address}=="01:23:45:67:89:ab", NAME="ethLan"
Существует немного более простой способ сделать это с названным пакетом ifrename
. Это имеет отдельное (от udev
) конфигурационный файл и Вы можете использовать MAC-адреса для идентификации интерфейсов.
Это конфликтует с wireless-tools
как бы то ни было.
ifrename
будет конфликтовать с udev
если оба используются, чтобы дать интерфейсам персистентные имена.
– Mischa Arefiev
12.01.2012, 11:33
udevadm info -a /sys/class/net/eth0
. (см.udevadm(8)
для деталей) – Austin Adams 21.08.2015, 04:18