como copiar e renomear arquivos com “:” e incrementar o número no nome do arquivo

2

Eu preciso copiar e renomear (e depois editar) um grupo de arquivos na pasta /etc/sysconfig/network-scripts . Os arquivos são ifcfg-eth1:*

Eu tenho ifcfg-eth1 a ifcfg-eth1:121 , mas preciso estender com mais endereços, então quero copiar, por exemplo, ifcfg-eth1:22 e ifcfg-eth1:23 para ifcfg-eth1:122 e ifcfg-eth1:123 e, em seguida, edite a cópia.

Eu sei como editar, mas não como copiar e renomear. Encontrei um monte de informações sobre renomeação neste site, mas acho que não entendi direito a parte ...

Como faço para lidar com nomes de arquivos, incluindo ":" ??

    
por rookie 05.07.2013 / 13:09

2 respostas

4

Não tenho certeza se entendi sua pergunta corretamente, mas no Bash isso pode funcionar:

for n in {22..99} ; do cp "ifcfg-eth1:$n" "ifcfg-eth1:1$n"; done

Isso copia ifcfg-eth1:22 a ifcfg-eth1:99 a ifcfg-eth1:122 a ifcfg-eth1:199 .

Não sei por que você usaria esses arquivos. Se isso é sobre aliases ethX: Y, você não precisa mais deles. Você pode apenas ip addr add para a interface principal. Então talvez você deva dar um passo para trás e fazer uma pergunta sobre o problema que você está realmente tentando resolver.

    
por 05.07.2013 / 13:48
1

Deve ser tão simples quanto mv "ifcfg-eth1:xx" "ifcfg-eth1:yy"

    
por 05.07.2013 / 13:39