logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#1 12-06-2024 18:19:17

Papadakis
Membre
Lieu : Far ouest environ
Distrib. : Bookworm
Noyau : Linux 6.1.0-9-amd64
(G)UI : xfce 4.18
Inscription : 23-04-2014

[Résolu] Supprimer les premiers caractères

Bonjour,

je possède un immense nombre de fichiers ayant pour nom ce genre de chose : [A5T3]Nom_du_fichier.machin
Je souhaite supprimer les 6 premiers caractères du nom des fichiers.
Pourriez-vous m'aider, svp ?
Je ne sais pas comment faire. scratchhead.gif

Dernière modification par Papadakis (12-06-2024 19:44:06)


Le désordre, c'est l'ordre, moins le pouvoir.

Hors ligne

#2 12-06-2024 19:11:39

vv222
Administrateur
Distrib. : Debian Sid
(G)UI : sway
Inscription : 18-11-2013
Site Web

Re : [Résolu] Supprimer les premiers caractères

Avec la commande file-rename :

file-rename 's/^\[....\]//' \[????\]*


Jouer sous Debian ? Facile !

Ceterum censeo Barum esse delendam

En ligne

#3 12-06-2024 19:34:26

otyugh
CA Debian-Facile
Lieu : Quimperlé/Arzano
Distrib. : Debian Stable
Inscription : 20-09-2016
Site Web

Re : [Résolu] Supprimer les premiers caractères

Et de manière graphique tu as le logiciel "Renommer en masse" qui est super intuitif (tu aura pas besoin d'aide). - Si tu es sous xfce il est déjà installé automatiquement (vient avec thunar).

virtue_signaling.pngpalestine.png
~1821942.svg

En ligne

#4 12-06-2024 19:43:26

Papadakis
Membre
Lieu : Far ouest environ
Distrib. : Bookworm
Noyau : Linux 6.1.0-9-amd64
(G)UI : xfce 4.18
Inscription : 23-04-2014

Re : [Résolu] Supprimer les premiers caractères

Je cherchais plutôt une réponse en ligne de commande; je me doutais qu'il allait y avoir des expressions régulières, il va vraiment falloir que je m'y mette.
Mais je découvre renommer en masse. Génial aussi.
Merci les bretons !

Le désordre, c'est l'ordre, moins le pouvoir.

Hors ligne

#5 12-06-2024 19:57:35

Croutons
Membre
Distrib. : Debian12
Noyau : Linux 6.1.0-13-amd64
(G)UI : Fluxbox(NakeDeb)
Inscription : 16-12-2016

Re : [Résolu] Supprimer les premiers caractères

-n pour la simulation sur l'entrée standard  wink

-->les cahiers du debutant<--      WikiDF-->Découvrir les principales commandes Linux<-- 
L' expérience, c'est le nom que chacun donne à ses erreurs. Oscar Wilde

En ligne

#6 12-06-2024 20:15:54

Tawal
Membre
Distrib. : Debian Stable à jour
Noyau : amd64
(G)UI : Xfce
Inscription : 25-02-2021

Re : [Résolu] Supprimer les premiers caractères

Belle commande de v222 smile

s/^\[....\]//   ==   substituer/CECI/par CELA/
^   ==   début de chaine
\[   ==   le caractère littéral [
.   ==   N'importe quel caractère une fois (donc ....  == 4 caractères quelconques)
Comme il n' y a rien pour remplacer alors ça efface.
Voilà pour le remplacement des 6 premiers caractères par rien (effacés donc).
(edit: voir man sed pour cette partie)

Ensuite vient un motif pour lister les bons fichiers \[????\]*
C'est pareil sauf qu'on utilise ? pour un seul caractère quelconque.
Le caractère * est un glob qui correspond à toutes chaînes de caractères.
Voir man bash pour cette partie.

Dernière modification par Tawal (12-06-2024 23:40:56)


Comme la science n'est pas infuse, elle se diffuse.
Useless Use of Cat Award
Filenames and Pathnames in Shell: How to do it Correctly
À chaque problème sa solution, à chaque solution son moyen, si pas de moyen, toujours le problème !

Hors ligne

#7 12-06-2024 20:23:17

otyugh
CA Debian-Facile
Lieu : Quimperlé/Arzano
Distrib. : Debian Stable
Inscription : 20-09-2016
Site Web

Re : [Résolu] Supprimer les premiers caractères

J'aurai juste fait ça btw

file-rename -n 's/^.{6}//' *


virtue_signaling.pngpalestine.png
~1821942.svg

En ligne

#8 12-06-2024 20:30:46

Tawal
Membre
Distrib. : Debian Stable à jour
Noyau : amd64
(G)UI : Xfce
Inscription : 25-02-2021

Re : [Résolu] Supprimer les premiers caractères

Ta commande est moins robuste et implique aussi qu'il n'y ait pas d'autres fichiers que ceux supposés d'être amputés des 6 premiers caractères (edit: correspondants au motif du demandeur).

Dernière modification par Tawal (12-06-2024 23:42:25)


Comme la science n'est pas infuse, elle se diffuse.
Useless Use of Cat Award
Filenames and Pathnames in Shell: How to do it Correctly
À chaque problème sa solution, à chaque solution son moyen, si pas de moyen, toujours le problème !

Hors ligne

#9 12-06-2024 21:52:05

otyugh
CA Debian-Facile
Lieu : Quimperlé/Arzano
Distrib. : Debian Stable
Inscription : 20-09-2016
Site Web

Re : [Résolu] Supprimer les premiers caractères

Il ferait '[A5T3]*' à la fin et de fait, ça serait <plus> robuste encore ~ (pinaille pinaille, je comprenais juste pas le non usage de {6})

Dernière modification par otyugh (12-06-2024 21:52:51)


virtue_signaling.pngpalestine.png
~1821942.svg

En ligne

#10 12-06-2024 22:32:48

Tawal
Membre
Distrib. : Debian Stable à jour
Noyau : amd64
(G)UI : Xfce
Inscription : 25-02-2021

Re : [Résolu] Supprimer les premiers caractères

Le modèle donné par le demandeur n'est qu'un exemple.
Il faut y comprendre : un crochet ouvert, 4 caractères quelconques, un crochet fermé (edit2: en début de nom de fichier).
Ta commande fonctionne mais elle est plus généraliste (dans l'expression de la substitution et le motif des fichiers, oui les 2)
On pourrait utiliser {n} et rester aussi robuste que vv222 ainsi :

file-rename 's/^\[.{4}\]//' \[????\]*


Vois-tu la différence dans les sélections (substitution et fichiers) ?

Edit:
Mais ma formule est moins jolie/lisible … d'où mon compliment à v222 wink

Edit3:
Mais je comprends ton approche au vu du titre du sujet qui est exactement ce que tu exprimes par ta commande.
Je conseille juste de penser à "sécuriser" ses propres commandes (bien penser à la portée de celles-ci) wink

Dernière modification par Tawal (12-06-2024 22:42:47)


Comme la science n'est pas infuse, elle se diffuse.
Useless Use of Cat Award
Filenames and Pathnames in Shell: How to do it Correctly
À chaque problème sa solution, à chaque solution son moyen, si pas de moyen, toujours le problème !

Hors ligne

#11 12-06-2024 23:13:03

vv222
Administrateur
Distrib. : Debian Sid
(G)UI : sway
Inscription : 18-11-2013
Site Web

Re : [Résolu] Supprimer les premiers caractères

otyugh a écrit :

(pinaille pinaille, je comprenais juste pas le non usage de {6})


Je ne retiens tout simplement jamais cette syntaxe, sinon c’est ça que j’aurais suggéré :

file-rename 's/^\[.{4}\]//' \[????\]*



---

Oups, je vois que c’est exactement ce que suggère Tawal au-dessus.


Jouer sous Debian ? Facile !

Ceterum censeo Barum esse delendam

En ligne

#12 12-06-2024 23:36:38

Tawal
Membre
Distrib. : Debian Stable à jour
Noyau : amd64
(G)UI : Xfce
Inscription : 25-02-2021

Re : [Résolu] Supprimer les premiers caractères

Franchement, s'il faut comparer les deux formules (celle de vv222 et la mienne) :
Elles ont le même nombre de caractères.
Celle de vv222 a une similitude dans la substitution et dans la sélection des fichiers.
Et est donc plus lisible/compréhensible.
De plus il est plus compliqué/lent de taper {4} que ... lol

Dernière modification par Tawal (13-06-2024 21:56:04)


Comme la science n'est pas infuse, elle se diffuse.
Useless Use of Cat Award
Filenames and Pathnames in Shell: How to do it Correctly
À chaque problème sa solution, à chaque solution son moyen, si pas de moyen, toujours le problème !

Hors ligne

Pied de page des forums