#1 Le 12/11/2020, à 16:08
- DonutMan75
[RESOLU] Shell et remplacement de paramètres
Hello,
une question toute bête.
J'ai :
echo $f
/chemin/vers/toto.cdfJe veux garder toto mais
1 - remplacer /chemin/vers/ par /sortie/
2 - remplacer l'extension cdf par mat
Je sais faire ça en utilisant les remplacements de paramètres du shell
Remplacer les chemins
echo /sortie/"${f##*/}"Remplacer l'extension
echo "${f%cdf}"matMa question : est-il possible de combiner ces deux commandes dans une seule atomique ?
Quelque chose du genre :
echo /sortie/"${f##*/%cdf}mat ## NE MARCHE PAS"Le man de bash n'indique rien mais je n'ai fait qu'une recherche rapide....
Merci d'avance ![]()
D.
Dernière modification par DonutMan75 (Le 12/11/2020, à 16:36)
Hors ligne
#2 Le 12/11/2020, à 16:27
- Watael

Re : [RESOLU] Shell et remplacement de paramètres
salut,
oui, non, mais là, ça fait trop d'un coup. ![]()
tu ne peux le faire qu'en plusieurs fois :
- enlever la "racine", puis
- enlever l'extension
$ n=${f##*/}
$ echo "/sortie/${n%.}.mat"Welcome to sHell. · eval is evil.
Hors ligne
#3 Le 12/11/2020, à 16:36
- DonutMan75
Re : [RESOLU] Shell et remplacement de paramètres
Salut Watael,
merci pour ta réponse, je passe le sujet à résolu ![]()
D.
Hors ligne
#4 Le 12/11/2020, à 16:41
- pingouinux

Re : [RESOLU] Shell et remplacement de paramètres
Bonjour,
$ f=/chemin/vers/toto.cdf
$ sed -r 's#.*/(.+)\.[^.]+#/sortie/\1.mat#' <<<"$f"
/sortie/toto.matHors ligne
#5 Le 12/11/2020, à 19:12
- Hizoka

Re : [RESOLU] Shell et remplacement de paramètres
Mais au final bien plus lent qu'en full bash ![]()
Kubuntu 20.04 64bits
GUI d'extraction de piste de fichier mkv -- Vignettes personnalisées -- Select boosté aux hormones -- Générateur de barre de progression
Hors ligne