[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] Help para Renomar Lote de Arquivos
From: |
Eliphas Levy Theodoro |
Subject: |
Re: [shell-script] Help para Renomar Lote de Arquivos |
Date: |
Mon, 22 Apr 2002 17:37:59 -0300 (BRT) |
address@hidden, @ 17:06:
> Estou com um probleminha para renomear todos os arquivos de um diretório.
> Na verdade, eu quero mudar o padrão (regra de formação) dos nomes dos CSV.
>
> Atualmente, a regra de formação do nome dos arquivos é esta:
> <string-1> NNNNNN - <string-2>.csv
[...]
> Eu preciso renomear todos estes arquivos para o seguinte formato
>
> <string2>: NNNNNN.csv
>
> Onde <string2 > e NNNNNN são os mesmo do original, e eu utilizo o ":" (dois
> pontos) para separar o string2 e o sequencial (isso é uma forçada de barra
> para simplificar a leitura do ls via outro script)
Regex pra fazer isso:
s/^.* \([^ ]*\) - \(.*\)\.csv$/\2: \1.csv/
^ ^ ^
str1 NNNNNNN - string2.csv
Feita a regex, o script é fácil:
#!/bin/sh
REGEX='s/^.* \([^ ]*\) - \(.*\)\.csv$/\2: \1.csv/'
ls *.csv | while read filename; do
newname=`echo "$filename" | sed "$REGEX"`
echo "Tou movendo '$filename' para '$newname'"
# descomente...
### mv "$filename" "$newname"
done
--
Eliphas
Anyone sending unsolicited bulk email (UBE, SPAM) to this address will
be charged a $25 handling fee plus a $5 network traffic fee per
started kilobyte. By extracting my address from this message or its
header, you agree to these terms.
Nevertheless, spammers trying to auto-extract addresses from this
message will definitely want to include address@hidden, address@hidden,
and address@hidden