In article <[email protected]>,
Thiago Nunes Vilela wrote:
> [Quero] criar um alias que quando eu der um MV num arquivo ele o
> renomeie [de acordo com o modelo arquivo.`date +%Y.%m.%d.%k:%M`].
Uma parte fundamental desta tarefa é a de solucionar o problema de
sobrepor um programa (/bin/mv) com um alias ou uma função do
shell. Isso pode ser solucionado definindo uma função de nome igual ao
nome do programa, e referenciando o programa através do seu caminho
absoluto. Assim.
%mv() { /bin/mv -n; }
%mv
/bin/mv: invalid option -- n
Try `/bin/mv --help' for more information.
E a tarefa em si pode ser feita como abaixo.
%mv() { for fn; do echo /bin/mv $fn /tmp/$fn.`date +%Y.%m.%d.%k:%M`; done; }
%mv pow0 pow0.o pow0.s.~1~
/bin/mv pow0 /tmp/pow0.2009.10.06.13:20
/bin/mv pow0.o /tmp/pow0.o.2009.10.06.13:20
/bin/mv pow0.s.~1~ /tmp/pow0.s.~1~.2009.10.06.13:20
(*) Sobre funções
O definir de uma função se comporta, intuitivamente, como a definição
de um programa convencional; na definição de mv(), as variáveis $1,
$2, ..., $n estão definidas, e o ``for name'' é a sintaxe usual para
associar ``name'' com cada um dos $1, $2, ..., $n.
%mv() { for fn; do echo $fn; done; }
%mv a b c d e
a
b
c
d
e
--
Mais sobre o Ubuntu em português: http://www.ubuntu-br.org/comece
Lista de discussão Ubuntu Brasil
Histórico, descadastramento e outras opções:
https://lists.ubuntu.com/mailman/listinfo/ubuntu-br