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.

nombre réponses : 25

#0 Re : -1 »  En écoute en ce moment (2) » Le 26/05/2023, à 18:12

Postmortem
Réponses : 8 504

Demain, vais voir Loudblast au Kreiz Y Fest ! big_smile

#1 Re : -1 »  [RÉSOLU] Ajouter le contenu d'un fichier à une ligne spécifique » Le 26/05/2023, à 16:48

Postmortem
Réponses : 17
Vobul a écrit :

Perso je pense qu'une réponse automatique d'un gpt peut régler pas mal de cas d'une manière pas trop dégueulasse. En tout cas pour ce type de question ça tape dans le mille.

Sauf que dans le cas présent, chatGPT n'a pas donné la bonne réponse, contrairement à sputnick ! tongue

#2 Re : -1 »  [RÉSOLU] Ajouter le contenu d'un fichier à une ligne spécifique » Le 26/05/2023, à 17:27

Postmortem
Réponses : 17
Akatu a écrit :

Bah si, la réponse de ChatGPT fonctionne très bien. neutral

Oui, je voulais juste faire une petite boutade sur le fait qu'il fallait mettre 2 à la place de 3 et que donc les IA sont donc plus bêtes que nous !!! lol

#3 Re : -1 »  [RÉSOLU] Ajouter le contenu d'un fichier à une ligne spécifique » Le 26/05/2023, à 17:37

Postmortem
Réponses : 17
Watael a écrit :

en bash :

content=$(<fichierAuHasard.txt) #ceci est équivalent à `cat fichierAuHasard.txt'
sed  '3i'"$content" fic1.txt  # je ne mets pas le `-i' pour que tu valides la commande avant de l'exécuter en vrai.

Dans sed, utiliser « i"$var" », où $var est le contenu de tout un fichier, c'est un sacré bordel ; dans le fichier, il peut y avoir des caractères interprétés par sed.

#4 Re : -1 »  [RÉSOLU] Ajouter le contenu d'un fichier à une ligne spécifique » Le 26/05/2023, à 18:20

Postmortem
Réponses : 17
Watael a écrit :

j'suis péremptoire, ça va pas.
j'suis conciliant, ça va pas.

Ben non, ça va pas !! lol:lol::lol:

Watael a écrit :

vraiment, vous ne savez pas ce que vous voulez. big_smile

Si si, t’embêter !! big_smile
Puis bon, avec tous les "eval" que tu m'as fait supprimer de mes scripts (bon, j'en ai gardé, faut pas déconner !), tu mérites bien que je t'embête !

#5 Re : -1 »  eval is evil? Mais encore... » Le 26/05/2023, à 15:39

Postmortem
Réponses : 24
Tawal a écrit :

Je suis surpris que [0-9] et [:digit:] peuvent contenir autre chose que des chiffres selon les locales !

Salut,
Que « [0-9] » contienne autre chose que des chiffres, je pige pas...
Par contre, pour « [:digit:] », je me dis que c'est pas délirant dans le cas où on est en hexadécimal (sauf si tu inclus déjà les "lettres/chiffres" dans ce que tu appelles chiffres ! tongue )

#6 Re : -1 »  eval is evil? Mais encore... » Le 26/05/2023, à 16:43

Postmortem
Réponses : 24
bruno a écrit :

Dans la norme POSIX [:digit:] correspond strictement à [0-9] et pour l'hexadécimal on a [:xdigit:] qui correspond strictement à [0-9A-Fa-f] (Réf.)

J'avais oublié « [:xdigit:] », merci !
Mais sinon, je faisais juste une supposition, ne comprenant pas trop comment « [0-9] » pouvait matcher autre chose que des chiffres.

#7 Re : -1 »  eval is evil? Mais encore... » Le 26/05/2023, à 17:51

Postmortem
Réponses : 24

@sputnick,oui oui, je répondais par rapport au message de Tawal :

Tawal a écrit :

Je suis surpris que [0-9] et [:digit:] peuvent contenir autre chose que des chiffres selon les locales !

Je comprends qu'il dit que « [0-9] » pourrait sortir autre chose que des chiffres. D'où mon interrogation/suggestion.

#8 Re : -1 »  [Imagemagick] Erreur de conversion en plaçant un texte sur une photo » Le 26/05/2023, à 16:39

Postmortem
Réponses : 5

Salut,
Il faudrait faire comme ça :

pointsize=20
weight=bold
fill=grey80
g_copyright='Ce que tu veux !'
texte="Copy $g_copyright"
draw="text 240,485 '$texte'"
convert -pointsize "$pointsize" -weight "$weight" -fill "$fill" -draw "$draw" source.jpg web/cible.jpg

#9 Re : -1 »  Script ClamAV » Le 20/05/2022, à 12:11

Postmortem
Réponses : 25

Salut,
Essaie de rajouter l'option « --cross-fs=yes » à ta commande « clamscan ».
Il me semble que par défaut c'est déjà "yes" mais ça ne coûte rien d'essayer.

#10 Re : -1 »  Le Topic des Couche-Tard 80 » Le 20/05/2022, à 17:25

Postmortem
Réponses : 6 014

On voit clairement que la liste de droite est bien plus longue... J'dis ça, j'dis rien...

#11 Re : -1 »  Utiliser une variable la re-utiliser dans une autre variable » Le 12/05/2022, à 11:06

Postmortem
Réponses : 28

Salut,
Si le nom de tes logs est bien hostname_AAAMMJJ_HHMMSS_{centiemes}.log, alors le fichier le plus récent est le dernier si on classe par ordre alphabétique.
Et du coup, on peut faire ça :

fics=( hostname_*_*_*.log )
var=$(grep "expression" "${fics[@]: -1}")

Edit :
Par rapport à ton premier message, « ls -al *.log | tail -1 » donne ça :

$ ls -al *.log | tail -1
-rw-rw---- 1 XXX XXX 5 mai   12 11:05 hostname_20220511_110331_6546456.log

Donc si tu récupères ça dans une variable et que tu fais « grep expression $var », c'est comme si tu faisais « grep "expression" -rw-rw---- 1 XXX XXX 5 mai   12 11:05 hostname_20220511_110331_6546456.log », donc forcément, ça marche pas très bien.

#12 Re : -1 »  Utiliser une variable la re-utiliser dans une autre variable » Le 12/05/2022, à 11:58

Postmortem
Réponses : 28
Tha Tawa'S a écrit :

Interessant, tu m'en dirais plus sur l'utilité de mettre [@]: -1} ?
et l'espace avant hostname ?

L'espace avant hostname n'est pas obligatoire.

fics=(*) : créé un tableau contenant le nom de tous les fichiers du répertoire ; c'est classé par ordre alphabétique.

Le premier élément est ${fics[0]}, le deuxième est ${fics[1]} etc...
${fics[@]}, c'est tous les éléments.
Tous les éléments à partir du troisième : ${fics[@]:2}
3 éléments à partir du deuxième : ${fics[@]:1:3}
Le dernier élément est ${fics[@]: -1} (espace obligatoire entre « : » et « -1 »)
Les 2 derniers éléments : ${fics[@]: -2}
L'avant dernier : ${fics[@]: -2:1}

Quelques exemples :

$ ls
fichier1  fichier2  fichier3  fichier4  fichier5

$ fics=(*)

$ echo "${fics[0]}"
fichier1

$ echo "${fics[1]}"
fichier2

$ echo "${fics[@]}"
fichier1 fichier2 fichier3 fichier4 fichier5

$ echo "${fics[@]:1:3}"
fichier2 fichier3 fichier4

$ echo "${fics[@]: -1}"
fichier5

$ echo "${fics[@]: -2}"
fichier4 fichier5

$ echo "${fics[@]: -2:1}"
fichier4

#13 Re : -1 »  [Shell] Test vide entre crochet - Comprendre les résultats » Le 06/05/2022, à 13:25

Postmortem
Réponses : 12

Salut,

Pour « [ ] », je dirais que c'est équivalent à « [ -n "" ] » ; on test si la chaîne de caractère est non vide, d'où le code retour différent de 0.
Pour « [] », avec nullglob activé, « [] » est supprimé avant exécution, c'est un peu comme si on avait tapé juste "Entrée", d'où le code retour 0.

Enfin, je suppose...

#14 Re : -1 »  [Shell] Test vide entre crochet - Comprendre les résultats » Le 06/05/2022, à 13:58

Postmortem
Réponses : 12

Si tu fais plutôt un "set -uvx", tu verras qu'il est "supprimé" quand tu tapes juste [] (compare avec et sans nullglob).
Par contre, je mets "supprimé" car c'est chelou en effet le comportement avec false

Edit :
En fait, je pense que le code retour devient 0 car on a tapé une commande, mais qui ne fait rien.

#15 Re : -1 »  [Shell] Test vide entre crochet - Comprendre les résultats » Le 06/05/2022, à 16:09

Postmortem
Réponses : 12

Pour moi, dans le cas de « [ ] », la commande est OK et cette commande de test renvoie faux. Si la commande était KO (niveau syntaxe), on aurait un code retour 2.
« [ ] » semble vraiment correspondre à tester "si la chaine vide est non-vide", d'où le code retour 1 :

$ [ a b c ]
bash: [: b : opérateur binaire attendu
$ echo $?
2
$ [ ]
$ echo $?
1
$ [ -n "" ]
$ echo $?
1

Pour « [] » (avec nullglob activé), on dirait que ça exécute une commande mais que cette commande étant "rien", ben on fait rien et du coup, code retour 0.

$ false
$ echo $?
1
$ false; []
[] : commande introuvable
$ echo $?
127
$ shopt -s nullglob
$ false
$ echo $?
1
$ false; []
$ echo $?
0

Edit :
Du coup, pour résumer, « [ ] » est un test, « [] » est un "glob".... Enfin, c'est comme ça que je le comprends !

#16 Re : -1 »  [Résolu] Affichage des caractères erronés. » Le 02/05/2022, à 12:28

Postmortem
Réponses : 23

Salut,
Peux tu renvoyer le résultat de :

locale

Puis tu regardes dans les préférences de ton terminal si le codage est en phase avec le résultat de « locale »

#17 Re : -1 »  [Résolu] insérer lignes dans un fichier .htaccess à partir d’une ligne » Le 29/04/2022, à 17:50

Postmortem
Réponses : 7

Salut,

$ more test.txt ajout.txt
::::::::::::::
test.txt
::::::::::::::
dsjfhkjsdfh
dfkjfqlk
kdjsflkjfd
dkfjlkfjd
RewriteBase /
djsfkjfdh
ldskjfhjdqh
lkjdfkl
lkjdflkj
::::::::::::::
ajout.txt
::::::::::::::
#
# RAJOUT
RewriteCond %{QUERY_STRING} amp.*$
RewriteRule ^(.*) $1 [L,R=301,QSD]
#

$ sed '\#RewriteBase /# r ajout.txt' test.txt
dsjfhkjsdfh
dfkjfqlk
kdjsflkjfd
dkfjlkfjd
RewriteBase /
#
# RAJOUT
RewriteCond %{QUERY_STRING} amp.*$
RewriteRule ^(.*) $1 [L,R=301,QSD]
#
djsfkjfdh
ldskjfhjdqh
lkjdfkl
lkjdflkj

Edit :
Si tu veux remplacer la ligne « RewriteBase / » par le contenu du fichier ajout.txt :

sed -e '\#RewriteBase /# { r ajout.txt' -e 'd }' test.txt

#18 Re : -1 »  [Résolu] insérer lignes dans un fichier .htaccess à partir d’une ligne » Le 30/04/2022, à 19:01

Postmortem
Réponses : 7

Si tu veux modifier le fichier directement, il suffit de rajouter l'option "-i" à sed.
On peut même faire une sauvegarde du fichier d'origine directement :
Pour ajouter le contenu du fichier après la ligne « RewriteBase / » :

sed -i.SAV '\#RewriteBase /$# r ajout.txt' test.txt

Pour remplacer la ligne par le contenu du fichier :

sed -i.SAV -e '\#RewriteBase /$# { r ajout.txt' -e 'd }' test.txt

Ça crée un fichier test.txt.SAV avant de modifier le fichier.
Attention, à chaque fois que tu re-exécutes cette commande, tu recréés un fichier test.txt.SAV à partir du fichier test.txt actuel...

#19 Re : -1 »  [Résolu] Récupérer la couleur Tempo depuis le site d'EDF » Le 13/10/2019, à 11:52

Postmortem
Réponses : 23

Salut,

kamaris a écrit :

en particulier dans ces lignes :

adresse="${adresse}${DATEJOUR}${finadresse}"

Non, en particulier là, ca sert à rien tongue

#20 Re : -1 »  Réduire la longeur des vidéos par lots » Le 08/10/2019, à 12:02

Postmortem
Réponses : 6

Bonjour,
D'après la commande de Nasman, ça donnerait un truc comme ça :

rep_source=/ton/repertoire/source # A modifier par ton répertoire source
rep_cible=/ton/repertoire/cible # A modifier par ton répertoire cible
for video in "$rep_source"/* # Ici, avec *, on traite tous les fichiers du répertoire source ; peut-être plutôt mettre un truc du genre "$rep_source"/*.mpg (en fonction de l'extension de tes vidéos)
do
    ffmpeg -i "$video" -map 0:X -map 0:Y -c:a copy -c:v copy -ss début_à_supprimer_en_s -t durée_à_garder "$rep_cible/${video##*/}"
done

Te reste à mettre à jour les options expliquées par Nasman :
-map 0:X (garde le flux numéro X, par exemple en cas de flux multilangues)
-c:a copy : garde le flux audio sans transcodage
-c:v copy : idem pour le flux vidéo
-ss : pour supprimer le début
-t : durée conservée de la vidéo (=fin-début sauté)

#21 Re : -1 »  (résolu) lister les dossiers modifiés depuis un certain temps » Le 07/10/2019, à 20:42

Postmortem
Réponses : 17

Salut,
La modification du contenu d'un fichier existant ne changera pas la date de modification du dossier.
L'ajout ou la suppression d'un fichier ou sous dossier changera la date de modification du dossier les contenant, mais pas des dossiers "au-dessus" dans la hiérarchie.
Changer le nom d'un fichier ou sous-dossier, je ne sais pas.

#22 Re : -1 »  [RESOLU] ajouter une police d'écriture sur GIMP » Le 08/10/2019, à 11:53

Postmortem
Réponses : 2

Bonjour,
Cette page de la documentation devrait t'aider.

#23 Re : -1 »  Déplacer graphiqement fenetres entre espaces de travail sur 2 écrans. » Le 07/10/2019, à 21:31

Postmortem
Réponses : 8

Je n'ai posté aucun micmac en ligne de commandes. Je voulais simplement montrer la liste des fichiers de l'extension ainsi que le nom de dossier à utiliser. J'aurais du faire une capture d'écran de Nautilus ?!
Sinon, j'avais zappé qu'il y avait l'option qu'il fallait dans Ajustements.
Mais l'extension apporte d'autres options sympas... Et pas pourries de bugs ! tongue

@carnussien :
Il me semble qu'on peut activer la vue activité sans cliquer, juste en amenant la souris dans un coin de l'écran. Par contre, je ne sais plus où on active cette fonction. Peut être dans Ajustements aussi ?

Edit :

carnussien a écrit :

Merci  Postmortem  (le nom me fait un peu bizarre ..)

Ça vient de ça

#24 Re : -1 »  Déplacer graphiqement fenetres entre espaces de travail sur 2 écrans. » Le 08/10/2019, à 12:28

Postmortem
Réponses : 8
Roschan a écrit :

pas besoin de faire un micmac en lignes de commandes pour ajouter une couche de bugs potentiels à ton système avec des extensions tierces neutral c'est un réglage qui existe nativement, il faut juste décocher "espaces de travail seulement sur l'écran principal" dans GNOME Ajustements

Je viens de vérifier, cela ne résout pas le souci exposé par carnussien sur 18.04.
En décochant cette option, on a bien les espaces de travail sur les 2 écrans, mais on a les miniatures que pour l'écran principal.
L'extension permet d'avoir les miniatures pour les 2 écrans.