|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Oct 2003
Città: Turin
Messaggi: 746
|
rename di files multipli
Ho una dir con dentro 600 files che cominciano tutti per BAD-nomefile
vorrei rinominarli tutti in "nomefile" ... in poche parole togliere il "prefisso " BAD- qualcuno mi può aiutare ? ho porvato a guardare "man rename " ma nn ci ho capito molto... HELP !
__________________
LiNUX User: 371384 "Bort_83 @ jabber.linux.it" LaKRiKKADiBoRT_SeTi@HoMe_GRouP .:: Vendo Cerchioni in lega peugeot 205 GT, 309 GT, 405, 106 Rally + Pirelli P600 185/55R16 ::. |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Apr 2000
Città: Roma
Messaggi: 15625
|
Usa uno script tipo questo:
Codice:
#!bin/bash if [ "$1" == "" ]; then echo "$0" directory exit 1 fi ls -1 "$1" > /dev/null || exit 1 (ls -1 "$1"; echo) | while read fname do case "$fname" in BAD-*) mv "$fname" `echo "$fname"|sed s/BAD-//` esac done;
__________________
0: or %edi, %ecx; adc %eax, (%edx); popf; je 0b-22; pop %ebx; fadds 0x56(%ecx); lds 0x56(%ebx), %esp; mov %al, %al andeqs pc, r1, #147456; blpl 0xff8dd280; ldrgtb r4, [r6, #-472]; addgt r5, r8, r3, ror #12 |
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Oct 2003
Città: Turin
Messaggi: 746
|
![]() ./rinomina: line 9: syntax error near unexpected token `echo)' ./rinomina: line 9: `ls -1 "$1"; echo) | while read fname' devo togliere la ) dopo echo ?
__________________
LiNUX User: 371384 "Bort_83 @ jabber.linux.it" LaKRiKKADiBoRT_SeTi@HoMe_GRouP .:: Vendo Cerchioni in lega peugeot 205 GT, 309 GT, 405, 106 Rally + Pirelli P600 185/55R16 ::. Ultima modifica di bort_83 : 06-12-2004 alle 09:59. |
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Apr 2000
Città: Roma
Messaggi: 15625
|
Boh a me funziona...
Togli "; echo" tanto è superfluo. In effetti lo script può essere ottimizzato in vari modi.
__________________
0: or %edi, %ecx; adc %eax, (%edx); popf; je 0b-22; pop %ebx; fadds 0x56(%ecx); lds 0x56(%ebx), %esp; mov %al, %al andeqs pc, r1, #147456; blpl 0xff8dd280; ldrgtb r4, [r6, #-472]; addgt r5, r8, r3, ror #12 |
![]() |
![]() |
![]() |
#5 | |
Senior Member
Iscritto dal: Apr 2000
Città: Roma
Messaggi: 15625
|
Quote:
Puoi scriverla più semplicemente ls -1 "$1" | while read fname senza parentesi né echo.
__________________
0: or %edi, %ecx; adc %eax, (%edx); popf; je 0b-22; pop %ebx; fadds 0x56(%ecx); lds 0x56(%ebx), %esp; mov %al, %al andeqs pc, r1, #147456; blpl 0xff8dd280; ldrgtb r4, [r6, #-472]; addgt r5, r8, r3, ror #12 |
|
![]() |
![]() |
![]() |
#6 |
Senior Member
Iscritto dal: Oct 2003
Città: Turin
Messaggi: 746
|
mittico!
Codice:
#!/bin/bash if [ "$1" == "" ]; then echo "$0" directory exit 1 fi ls -1 "$1" > /dev/null || exit 1 ls -1 "$1" | while read fname do case "$fname" in BAD-*) mv "$fname" `echo "$fname"|sed s/BAD-//` esac done; ![]()
__________________
LiNUX User: 371384 "Bort_83 @ jabber.linux.it" LaKRiKKADiBoRT_SeTi@HoMe_GRouP .:: Vendo Cerchioni in lega peugeot 205 GT, 309 GT, 405, 106 Rally + Pirelli P600 185/55R16 ::. |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 12:12.