![]() |
|
|
google unix.com
|
|||||||
| Forums | S'inscrire | Forum Rules | Liens | Albums | FAQ | Liste des membres | Calendrier | Recherche | Aujourd'hui, les postes | Marquer les forums comme lus |
| De programmation et de script Shell Posez vos questions à propos de KSH, CSH, SH, BASH, PERL, PHP, SED, awk et d'autres scripts shell et les langages de script shell ici. |
Plus d'UNIX et Linux Forum Sujets Vous trouverez peut-être utile
|
||||
| Fil | Thread Starter | Forum | Réponses | Last Post |
| Renommer plusieurs fichiers | jayell | De programmation et de script Shell | 7 | 01-12-2009 04:27 PM |
| Renommer plusieurs fichiers | Jazmania | De programmation et de script Shell | 6 | 01-02-2009 02:16 PM |
| Renommer des fichiers multiples | dhiren_shah | UNIX pour les nuls Questions et réponses | 2 | 09-12-2008 02:23 AM |
| Renommer plusieurs fichiers | rmayur | UNIX pour les nuls Questions et réponses | 6 | 02-26-2004 04:40 AM |
| Renommer plusieurs fichiers | jxh461 | De programmation et de script Shell | 4 | 04-01-2003 07:25 PM |
![]() |
|
|
LinkBack | Thread Tools | Recherche sur ce Thread | Rate Thread | Modes d'affichage |
|
|
|
||||
|
Renommer des fichiers (plusieurs fichiers)
Salut,
J'ai un répertoire avec des noms de fichiers comme ABC20090101AXY.txt, ABC20090102BZ.txt, etc ABC20090101COF.txt Les chiffres représentent les noms de fichiers dans la date. Je tiens à renommer les fichiers à AXY.txt, BZ.txt et COF.txt J'ai essayé avec ce code. mon_fichier \u003d date '+ ABC% Y% m% d' for i in *. txt faire mv $ i `echo $ i | sed 's / $ mon_fichier / /' ` fait Mais son message en donnant mv: ABC20090101AXY.txt et ABC20090101AXY.txt sont identiques Can u help me trouver le problème. Observe, Shekhar |
|
||||
|
Salut,
variables shell dans''ne sont pas élargies. Donc ici Code:
mv $i `echo $i | sed 's/$myfile//'` Soit utiliser "..." ou pas sed à tous. Shell construit-ins sont assez. Essayez: Code:
mv $i ${i/200[7-9][0-1][0-9][0-3][0-9]/}
|
|
||||
|
Essayez cette
mon_fichier \u003d $ (date '+ ABC% Y% m% d') for i in *. txt faire mv $ i `echo $ i | sed "s / $ mon_fichier / /" ` fait i thik u didnt utiliser le verso des tics ou $ () pour définir la variable mon_fichier. de dépenser $ mon_fichier usage "au lieu de" j'ai essayé ce 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 |
|
||||
|
Citation:
Code:
# 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 ] |
|
||||
|
Citation:
Code:
awk '{ system("mv " FILENAME" " substr(FILENAME,1,12) )}' ABC*.txt
|
![]() |
| Bookmarks |
| Thread Tools | Recherche sur ce Thread |
| Modes d'affichage | Rate this thread |
|
|