![]() |
Ciao e benvenuto da parte degli Stati Uniti al UNIX e Linux Forum! Grazie per la visita ed unirsi alla nostra Comunità Globale.
|
|
google unix.com
|
|||||||
| Forum | Registrati | Regole Forum | Collegamenti | Album | FAQ | Members List | Calendario | Ricerca | Today's Posts | Mark Forums Read |
| Shell scripting e di programmazione Pubblica domande su KSH, CSH, SH, Bash, Perl, PHP, sed, awk e da altri script di shell e linguaggi di scripting shell qui. |
Più di UNIX e Linux Forum Argomenti potreste trovare utili
|
||||
| Filo | Thread Starter | Forum | Risposte | Ultimo Post |
| Ridenominazione di più file | jayell | Shell scripting e di programmazione | 7 | 01-12-2009 04:27 PM |
| Ridenominazione di più file | Jazmania | Shell scripting e di programmazione | 6 | 01-02-2009 02:16 PM |
| Rinominare file multipli | dhiren_shah | UNIX for Dummies Domande & Risposte | 2 | 09-12-2008 01:23 AM |
| Ridenominazione di più file | rmayur | UNIX for Dummies Domande & Risposte | 6 | 02-26-2004 04:40 AM |
| Ridenominazione di più file | jxh461 | Shell scripting e di programmazione | 4 | 04-01-2003 06:25 PM |
![]() |
|
|
LinkBack | Thread Tools | Cerca in questo Thread | Rate Thread | Modalità di visualizzazione |
|
|
|
||||
|
Ridenominazione di file (file multipli)
Salve,
Ho una directory con nomi di file come ABC20090101AXY.txt, ABC20090102BZ.txt, ecc ABC20090101COF.txt Le cifre rappresentano i nomi dei file la data. Voglio per rinominare i file AXY.txt, BZ.txt e COF.txt Ho provato con questo codice. MyFile \u003d data 'ABC +% Y% m% d' for i in *. txt fare mv $ i `echo $ i | sed 's / MyFile $ / /' ` fatto Ma il suo messaggio di mv: ABC20090101AXY.txt e ABC20090101AXY.txt sono identici Can u help me trovare il problema. Saluti, Shekhar |
|
||||
|
Salve,
variabili di shell all'interno di''non vengono espanse. Allora qui Codice:
mv $i `echo $i | sed 's/$myfile//'` Utilizzare "..." o no sed a tutti. Shell-ins sono sufficienti. Prova: Codice:
mv $i ${i/200[7-9][0-1][0-9][0-3][0-9]/}
|
|
||||
|
Prova questo
MyFile \u003d $ (date '+ ABC% Y% m% d') for i in *. txt fare mv $ i `echo $ i | sed "s / MyFile $ / /" ` fatto i thik u didnt uso indietro tic o $ () per impostare MyFile variabile. a spendere $ MyFile uso "al posto di ' Ho provato questo a \u003d $ (date '+ ABC% Y% m% d') echo ABC20090103AXY.txt | sed 's / $ a / / g' ABC20090103AXY.txt echo ABC20090103AXY.txt | sed "s / $ a / / g" AXY.txt echo '$ aABC20090103AXY.txt' | sed "s / $ a / / g" $ aAXY.txt echo '$ aABC20090103AXY.txt' | sed 's / $ a / / g' ABC20090103AXY.txt |
|
||||
|
Citazione:
Codice:
# ls -1 ABC20090101AXY.txt ABC20090101COF.txt ABC20090102BZ.txt # filerenamer.py -p "ABC\d+" -e "" -l "ABC*.txt" ==>>>> [ /home/ABC20090101COF.txt ]==>[ /home/COF.txt ] ==>>>> [ /home/ABC20090101AXY.txt ]==>[ /home/AXY.txt ] ==>>>> [ /home/ABC20090102BZ.txt ]==>[ /home/BZ.txt ] |
|
||||
|
Citazione:
Codice:
awk '{ system("mv " FILENAME" " substr(FILENAME,1,12) )}' ABC*.txt
|
![]() |
| Segnalibri |
| Thread Tools | Cerca in questo Thread |
| Modalità di visualizzazione | Vota questo thread |
|
|