Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 29/11/2014, à 11:17

francoise_peace

[résolu] Une ligne de commande pour changer : en - sur mes images

Bonjour, comme j'ai un double boot, je ne peux pas lire mes captures d'écran dont le format comporte deux fois :, par exemple:
paris du 2014-11-26 19:14:39.png

Donc j'aimerais une ligne de commande Ubuntu qui me transformerai (sûrement sed) toutes mes images de tous les répertoires et sous-répertoires (sûrement -R) du répertoire: /media/fran/Acer/Documents and Settings/Francoise/Pictures en remplaçant tous les deux points ":" par un tiret "-" de mes .png.

Merci d'avance.

Dernière modification par francoise_peace (Le 30/11/2014, à 11:31)

Hors ligne

#2 Le 29/11/2014, à 11:51

Watael

Re : [résolu] Une ligne de commande pour changer : en - sur mes images

salut,

je ne peux pas lire mes captures d'écran dont le format comporte deux fois :

ce n'est sûrement pas dû aux deux points. hmm
ou alors, tu veux dire que sur W$ ce n'est pas possible ? roll


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#3 Le 29/11/2014, à 13:10

Hizoka

Re : [résolu] Une ligne de commande pour changer : en - sur mes images

Salut,
un truc du genre ?

while read file
do
  # mv "${file}" "${file//:/-}"
  echo "${file} => ${file//:/-}
done < <(find "/media/fran/Acer/Documents and Settings/Francoise/Pictures" -iname "*.png")

si ca te convient, tu enleves le # de mv.


KDE Neon 64bits
Tous mes softs (MKVExtractorQt, HizoSelect, HizoProgress, Qtesseract, Keneric, Services menus...) sont sur github

Hors ligne

#4 Le 29/11/2014, à 14:23

serged

Re : [résolu] Une ligne de commande pour changer : en - sur mes images

Un petit :

rename 's/:/-/' *.png

ne ferait pas aussi bien ?

Note: Si c'est juste pour une utilisation ponctuelle, il n'y a pas de honte à utiliser pyrenamer en mode graphique... (il existe même une extension pour nautilus / nemo).


LinuxMint Vera Cinnamon et d'autres machines en MATE, XFCE... 20.x , 21.x ou 19.x
Tour : Asus F2A55 / AMD A8-5600K APU 3,6GHz / RAM 16Go / Nvidia GeForce GT610 / LM21.1 Cinnamon
Portable : LDLC Mercure MH : Celeron N3450 /RAM 4Go / Intel HD graphics 500 i915 / biboot Win 10 (sur SSD) - LM21.1 MATE (sur HDD)

Hors ligne

#5 Le 29/11/2014, à 14:32

Tomzz

Re : [résolu] Une ligne de commande pour changer : en - sur mes images

Bonjour,
Tu as detox qui fais ça tout seul comme un grand:

sudo apt-get install detox

L'utilisation est simple mais je ne l'ai plus en tête, alors après install:

man detox

Hors ligne

#6 Le 30/11/2014, à 11:10

francoise_peace

Re : [résolu] Une ligne de commande pour changer : en - sur mes images

Pour ce qui est de mon Windows 8.1, du jour au lendemain il a bloqué toutes mes images contenant ":", autrefois je pouvais les lire. Maintenant je ne peux même pas les déplacer.

Merci à tous pour vos réponses,

rename 's/:/-/' *.png

Ne renomme que le premier deux points et oublie le second deux points: paris du 2014-11-26 19:14:39.png -> paris du 2014-11-26 19-14:39.png

Le petit programme, j'ai su rajouter une " ainsi que la spécification bash, mais n'étant pas informaticienne, je ne sais pas corriger l'erreur de re-direction.

En effet oui, on peut utiliser un programme qui renomme nos fichiers à notre place. Mais je ne pense pas qu'ils font cela sur tous les sous-répertoires. Mon GPrename ne rentre pas dans /media.

Detox ça a l'air complique, ça s'intéresse à des noms de fichiers qui ont des espaces et ça m'enlèverai tous mes espaces: paris du 2014-11-26 19-14:39.png -> paris_du_2014-11-26_19-14_39.png
Pour simuler le renommage de tous les fichiers dans le répertoire courant :

detox -n -s utf_8 *

Pyrenamer, je vais voir s'il accepte de rentrer dans /media où tout est connecté depuis Nautilus. Ubuntu me dit que sa mise à jour est incomplète. Oui, il rentre dans media, c'est déjà ça.

Dernière modification par francoise_peace (Le 30/11/2014, à 11:16)

Hors ligne

#7 Le 30/11/2014, à 11:14

Hizoka

Re : [résolu] Une ligne de commande pour changer : en - sur mes images

pour remplacer tous les : d'un fichier :

rename 's/:/-/g' *.png

mais si tu veux du reccursif, regarde mon poste #3, il fait tout automatiquement...

ou encore :

find "/media/fran/Acer/Documents and Settings/Francoise/Pictures" -iname "*.png" -exec rename 's/:/-/g' {} \;

Dernière modification par Hizoka (Le 30/11/2014, à 11:15)


KDE Neon 64bits
Tous mes softs (MKVExtractorQt, HizoSelect, HizoProgress, Qtesseract, Keneric, Services menus...) sont sur github

Hors ligne

#8 Le 30/11/2014, à 11:28

francoise_peace

Re : [résolu] Une ligne de commande pour changer : en - sur mes images

Hizoka a écrit :

pour remplacer tous les : d'un fichier :
ou encore :

find "/media/fran/Acer/Documents and Settings/Francoise/Pictures" -iname "*.png" -exec rename 's/:/-/g' {} \;

Oui, cette ligne de commande est fantastique, elle me renomme tous les .png sans toucher aux autres fichiers de tous mes répertoires et sous-répertoires. C'est vraiment ce que je voulais.

Ton programme, si je mets un " après echo "${file} => ${file//:/-}, il me dit: renommer.sh: 6: renommer.sh: Syntax error: redirection unexpected.

Hors ligne

#9 Le 30/11/2014, à 12:01

Hizoka

Re : [résolu] Une ligne de commande pour changer : en - sur mes images

Content que ça le fasse comme ça smile

Sinon j'avais oublié de fermer le texte de l'echo... il manquait un ".

while read file
do
  # mv "${file}" "${file//:/-}"
  echo "${file} => ${file//:/-}"
done < <(find "/media/fran/Acer/Documents and Settings/Francoise/Pictures" -iname "*.png")

KDE Neon 64bits
Tous mes softs (MKVExtractorQt, HizoSelect, HizoProgress, Qtesseract, Keneric, Services menus...) sont sur github

Hors ligne

#10 Le 30/11/2014, à 12:53

Tomzz

Re : [résolu] Une ligne de commande pour changer : en - sur mes images

Bonjour,
Juste au cas où, ou pour quelqu'un d'autre qui tomberai sur cette discussion, detox est configurable par un fichier, il semble possible de sélectionner quels caractères sont à remplacer et par quoi.
pour la syntaxe, faire:

man detoxrc

Hors ligne