…sauf que là tu lui fais effacer les JPG et les RAW s'ils existent.…
Non, je ne lui fais rien effacer du tout :
Dans la ligne de commande qui lancera le script,
s'il ne donne aucun nom de fichier dont le nom d'extension serait .JPG
aucun fichier ne sera supprimé.
D'autre part, quoi qu'il donne comme argument dans la ligne de commande lançant ce script,
aucun fichier dont le nom d'extension serait .RAW
ne sera supprimé ou modifié ou effacé.
#!/bin/bashif[$# -gt 0];then# S'il y a des arguments qui suivent la commandeargs=("$@")# Créer un tableau avec la liste de ces argumentsfor fich in "${args[@]}";do# Pour chacun de ces argumentsif[ -e "$fich"]&&["${fich##*.}"="JPG"];then# Si cet argument est un nom de fichier existant# - et que son nom d'extension est bien ".JPG"
rm "$fich"# Alors supprimer le fichierif[ -e "${fich%.*}.ARW"];then# Si il existe un fichier du même nom# - dont le nom d'extension est ".ARW"
rm "${fich%.*}.ARW"# Alors supprimer ce fichierfifidonefi
Je n'ai pas de distribution Mint accessible,
donc, je n'ai pas pu tester la solution proposée dans le message
de ce fil de discussion sur forums.linuxmint.com dont le titre est : Mint 19.1—Terminals show asterisks on password. How to disable this feature?
J'ai beaucoup appris en lisant les pages du The Bash Hackers Wiki
(et surtout, qu'il me reste encore beaucoup à apprendre, mais bon, comme j'aime çà … )
#!/bin/bashextension="png"# Le nom d'extension SANS le point qui la précèdenomRepert="/nom/du/répertoire"# …dans lequel se trouvent les fichiers à traitertablFichs=("$nomRepert/"*"$extension")tablFichs=("${tablFichs[@]##*\/}")tmpIFS="$IFS"IFS=$'\n'maRegex='([0-9]{1,}\.'"$extension"')$'tablUniqs=($(\for fich in "${tablFichs[@]}";do[["$fich"=~ $maRegex]]&&\printf"%s\n""${fich//${BASH_REMATCH[1]}/}"done| sort -u
))for debutNom in "${tablUniqs[@]}";dochiffres=""maRegex="^$debutNom"'([0-9]{1,})\.'"$extension"for fich in "${tablFichs[@]}";do[["$fich"=~ $maRegex]]&&\chiffres+="${BASH_REMATCH[1]}"$'\n'donechiffres="$(sort -n <<<$chiffres| tr '\n'',')"printf"%s\n""$debutNom[${chiffres:1:-1}]"doneIFS="$tmpIFS"
La liste des noms des fichiers pour le test :
autrefichier_4.png
autrefichier_5.png
avec espace1.png
avec espace2.png
avec espace3.png
fic77.pnget445.png
fich77a7888.png
fich77a7.png
fichier42.png
un77autre_0.png
un77autre_3.png
unautre_055.png
unautre_155.png
unautre_50.png
unautre_56.png
Le retour du script en fonction de la liste ci-dessus :
autrefichier_[4,5]
avec espace[1,2,3]
fic77.pnget[445]
fich77a[7,7888]
fichier[42]
un77autre_[0,3]
unautre_[50,055,56,155]
#!/bin/bashextension=".png"nomRepertoire="dossier"tmpIFS="$IFS";IFS=$'\n'tablFichs=("$nomRepertoire/"*"$extension")tablFichs=(${tablFichs[@]##*\/})maRegex='[0-9][0-9]*'"$extension"'$'tablUniqs=($(\for fich in "${tablFichs[@]}";do[["$fich"=~ ($maRegex)]]&&\printf"%s\n""${fich//${BASH_REMATCH[1]}/}"done| sort -u
))for debutNom in "${tablUniqs[@]}";dochiffres=""for fich in "${tablFichs[@]}";do[["$fich"=~ "$debutNom"(.*)]]&&\chiffres+="${BASH_REMATCH[1]//$extension}"doneprintf"%s\n""$nomRepertoire/$debutNom[$chiffres]"doneIFS=$tmpIFS
#!/bin/bashnomIdentique="toto"# La partie identique du nom des fichiersmaRegex="$nomIdentique([0-9]).png$"# Pour extraire le chiffre situé juste avant ".png"chiffres=""# Pour la liste des chiffres qui seront extraitstablFichs=( dossier/$nomIdentique*.png )# Mise dans un tableau de la listefor fich in "${tablFichs[@]}";dofich="${fich##*\/}"# Suppression du nom du chemin [["$fich"=~ $maRegex]]&&chiffres="$chiffres${BASH_REMATCH[1]}"doneecho"$nomIdentique[$chiffres]"
Pour la bouteille de gaz, il te faut la poser sur un "pèse personne" (environ 10€)
Pose une bouteille de gaz vide sur le pèse personne et mets à zéro le pèse personne.
Quand ta bouteille pleine se videra alors qu'elle est posée sur le pèse personne,
il te suffira de lire le poids de gaz restant pour prévoir de la changer avant la panne.
J'ai remplacé la commande grep par une commande sed,
ce qui fait que, si l'environnement le permet,
l'exécution successive des deux lignes de commandes suivantes
devraient suffire pour créer ton nouveau fichier /usr/bin/oscam
nomFichier=wget -q -O- --trust-server-names "http://dreamosat.net/oscam/index.php?&direction=1&order=nom&directory=1.20_TRUNK/arm_dm900-solo4k" | sed -n '0,/.*downloadfile/s/.*filename=\(oscam-svn.*tar.gz\)&.*/\1/p'
wget -q -O- --trust-server-names "http://oscam.dreamosat.net/index.php?action=downloadfile&filename=$nomFichier&directory=1.20_TRUNK/arm_dm900-solo4k&" | tar -xOz > /usr/bin/oscam
[^] # Re: Peut-être avec ce script bash
Posté par MicP . En réponse au message Commande de suppression par analogie de nom.. Évalué à 3.
Effectivement, ça simplifierait les choses
Ce qui donnerait :
(J'en ai profité pour reformuler la ligne du premier
if
en utilisant un
-a
plutôt que le&&
)[^] # Re: Peut-être avec ce script bash
Posté par MicP . En réponse au message Commande de suppression par analogie de nom.. Évalué à 1. Dernière modification le 07 avril 2019 à 16:35.
Non, je ne lui fais rien effacer du tout :
Dans la ligne de commande qui lancera le script,
s'il ne donne aucun nom de fichier dont le nom d'extension serait
.JPG
aucun fichier ne sera supprimé.
D'autre part, quoi qu'il donne comme argument dans la ligne de commande lançant ce script,
aucun fichier dont le nom d'extension serait
.RAW
ne sera supprimé ou modifié ou effacé.
# Peut-être avec ce script bash
Posté par MicP . En réponse au message Commande de suppression par analogie de nom.. Évalué à 3.
Bonjour
[^] # Re: Fuyez pauvres fous !
Posté par MicP . En réponse au message Comment extraire une partie d'un fichier texte . Évalué à 3.
Tout à fait d'accord,
je n'avais fait que répondre à la question posée
en utilisant l'outil proposé.
Il existe aussi, avec Python : BeautifulSoup
[^] # Re: avec sed
Posté par MicP . En réponse au message Comment extraire une partie d'un fichier texte . Évalué à 2. Dernière modification le 13 mars 2019 à 06:55.
Pardon, je n'avais pris que la ligne extraire
et pas le texte intégral la contenant
# avec sed
Posté par MicP . En réponse au message Comment extraire une partie d'un fichier texte . Évalué à 2. Dernière modification le 13 mars 2019 à 06:35.
Bonjour
Ou bien
[^] # Re: peut-être une solution
Posté par MicP . En réponse au message mot de passe sudo et astérisques???. Évalué à 2.
Merci pour le retour.
Puisque la solution fonctionne, je la reporte ci-dessous :
# peut-être une solution
Posté par MicP . En réponse au message mot de passe sudo et astérisques???. Évalué à 2. Dernière modification le 07 mars 2019 à 15:58.
Bonjour
Je n'ai pas de distribution Mint accessible,
donc, je n'ai pas pu tester la solution proposée dans le message
de ce fil de discussion sur forums.linuxmint.com dont le titre est :
Mint 19.1—Terminals show asterisks on password. How to disable this feature?
[^] # Re: Avec cat
Posté par MicP . En réponse au message Ajouter un mot au debut de la ligne sur shell. Évalué à 4.
J'ai beaucoup appris en lisant les pages du The Bash Hackers Wiki
(et surtout, qu'il me reste encore beaucoup à apprendre, mais bon, comme j'aime çà … )
[^] # Re: Avec cat
Posté par MicP . En réponse au message Ajouter un mot au debut de la ligne sur shell. Évalué à 2.
Il faudra penser à supprimer le fichier
toto
Sinon, on peut aussi,
toujours avec
cat
enbash
mais sans le fichier
toto
# Avec sed
Posté par MicP . En réponse au message Ajouter un mot au debut de la ligne sur shell. Évalué à 4. Dernière modification le 13 février 2019 à 17:09.
NOTE : Histoire de ne pas confondre ce qui est affiché avec un
L
minuscule,c'est le numéro de la ligne (chiffre 1) qui est juste avant le caractère
s
[^] # Re: celui-ci devrait mieux fonctionner
Posté par MicP . En réponse au message bash recuperer nom de plusieurs fichiers incrémentés. Évalué à 1. Dernière modification le 12 février 2019 à 07:37.
Le contenu de
monScript.sh
:La liste des noms des fichiers pour le test :
Le retour du script en fonction de la liste ci-dessus :
[^] # message à supprimer
Posté par MicP . En réponse au message bash recuperer nom de plusieurs fichiers incrémentés. Évalué à 1. Dernière modification le 12 février 2019 à 07:24.
désolé
# ou alors…
Posté par MicP . En réponse au message bash recuperer nom de plusieurs fichiers incrémentés. Évalué à 1.
# un petit script
Posté par MicP . En réponse au message bash recuperer nom de plusieurs fichiers incrémentés. Évalué à 1. Dernière modification le 11 février 2019 à 16:59.
# en téléchargeant d'abord le fichier image :
Posté par MicP . En réponse au message essai de script. Évalué à 2.
# ou alors, avec un pipe, utiliser xargs
Posté par MicP . En réponse au message probleme avec la commande ls | file. Évalué à 3. Dernière modification le 10 février 2019 à 16:46.
=======
Voir :
# ou bien, en une seule ligne :
Posté par MicP . En réponse au message Extraire un lien dans un fichier. Évalué à 2.
# ou alors :
Posté par MicP . En réponse au message Télécharger un fichier ipk zip. Évalué à 1. Dernière modification le 04 février 2019 à 13:07.
[^] # Re: Pour coloriser…
Posté par MicP . En réponse au message Alias avec cible changeante.. Évalué à 2.
Bonjour
# …créer un script pour télécharger un fihier ipk …
Posté par MicP . En réponse au message Télécharger un fichier ipk zip. Évalué à 3. Dernière modification le 02 février 2019 à 04:13.
Bonjour
# …c'est comme les bouteilles de gaz, ça tombe en panne quand on en a besoin !…
Posté par MicP . En réponse au message Vérifier l'intégrité des sauvegardes. Évalué à 2.
Pour la bouteille de gaz, il te faut la poser sur un "pèse personne" (environ 10€)
Pose une bouteille de gaz vide sur le pèse personne et mets à zéro le pèse personne.
Quand ta bouteille pleine se videra alors qu'elle est posée sur le pèse personne,
il te suffira de lire le poids de gaz restant pour prévoir de la changer avant la panne.
[^] # Re: Finalement peut-être…
Posté par MicP . En réponse au message Insérer une variable dans un lien sur shell. Évalué à 1.
Grrrr!!!!
J'ai oublié deux caractères.
Je reprends le message précédent en y apportant la correction :
Désolé…
[^] # Re: Finalement peut-être…
Posté par MicP . En réponse au message Insérer une variable dans un lien sur shell. Évalué à 1. Dernière modification le 16 janvier 2019 à 14:59.
J'ai remplacé la commande
grep
par une commandesed
,ce qui fait que, si l'environnement le permet,
l'exécution successive des deux lignes de commandes suivantes
devraient suffire pour créer ton nouveau fichier
/usr/bin/oscam
# Finalement peut-être…
Posté par MicP . En réponse au message Insérer une variable dans un lien sur shell. Évalué à 1. Dernière modification le 16 janvier 2019 à 23:02.
En récupérant le nom du premier fichier à télécharger dans la page web :
et en l'assignant à la variable nomFichier,
pour ensuite télécharger ce fichier et renommer le fichier extrait en /usr/bin/oscam