On peut même faire simplement (mais avec réserve… vous avez trouvé ?)
Si "${mondossier}" est vide ou n'existe pas ça va planter.
Exact. Hormis cela, la commande ne râle pas si le dossier existe déjà, raison pour laquelle on peut zapper le test d’existence… En vrai on peut tester si la variable n’est pas vide (-z) ou si le chemin n’est pas déjà utilisé (-e) pour ne pas tenter de remplacer un fichier par un répertoire (il y aura normalement une errreur mais bon.)
En fait, pour rester dans l’esprit de l’exemple, j’aurais du simplement écrire : mkdir "${mondossier}"
…parce-que l’option -p nécessite aussi une autre réserve : que le chemin ne soit pas sur un montage absent… La création va se faire mais on va s’arracher les cheveux par la suite…
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
Héhé :) Si tu regardes bien, ce n’est pas exactement le même test
$[ -f $variablequinexistepas]&&echo ok ||echo ko
ok$[ -f "$variablequinexistepas"]&&echo ok ||echo ko
ko
Par moment on ne se souvient plus de pourquoi on fait les chose comme cela …
La forme [[…]] permet en effet de se prémunir des variables vides non “quoté”s …ou comportant des espaces, etc.
Effectivement ca fonctionne, mais je trouve plus logique : si quelque chose n'existe pas, je fais ..
Au contraire de si quelque chose existe … je passe ? sinon je le créer.
Cette seconde forme se lit : vérifie si le répertoire existe, sinon crée le (et effectivement on ne fait rien s’il existe)
La première forme est littéralement : vérifie le contraire de si le répertoire existe (oui donc au final si le répertoire n’existe pas), puis alors crée le (sinon je passe)
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
C’est dommage dans le sens où la religion est contre la traduction par peur des contre-sens si j’ai bien compris. Du coup il faut aller à la source (donc lire et comprendre l’arabe de l’époque et de la région…) sinon c’est une blague (comme de bêtement réciter du bruit…)
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
Si si, un alphabet (au même terme que les systèmes d’écritures latin ou cyrillique) …qui a la particularité de ressembler à un alphasyllabaire comme le sont l’amharique (plus précisément le système d’écriture guèze ou ge'ez) et le devanagari par exemple.
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
L’expression en soi ne me parle pas (ou me plonge dans des interrogations philosophiques qui me font me demander si on a affaire à un droïde par exemple.) Dans le contexte présent (la phrase complète et les phrases autour), elle se comprend très bien (même si les natifs peuvent avoir l’impression de lire une sorte de « parler-nègre » comme on dit.)
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
Tu sais bien que nous sommes des gentils… :->
rot13 est le moyen le plus simple (symétrie) et aisé/rapide (à scripter si on n’a pas quelque part un outil qui le fait) quand on n’a pas de balise à se poiler :-)
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
Je n'ai pas encore réussi à comprendre le principe des tests unitaires donc pas ( encore ? ) de ça dans mes scripts.
Quand sera venu le moment, tu pourras ajouter à ta trousse d’outils : bach ou bats ou ShellSpec ou shunit2 ou korn-spec/bash-spec ou zunit etc. (tiens, ça pourrait faire l’objet d’un ou deux journaux si j’ai un peu de bande passante.)
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
Il y a juste un cas particulier que l’on utilise très peu : en première position (donc concerne le script lui-même), ça va annuler/annihiler l’affichage normal des erreurs…
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
Oups… me suis pas bien relu pour le dollar en trop.
Merci pour avoir pris le temps d’éclairer mes interrogations ; c’est surtout que ça n’était pas clair (pour moi) que le projet s’appelle Ljournal.
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
La compréhension est leur nature qui parfois peut nous (français et pays latins en général) sembler obséquieuse : cette forme (impérative) est un dans leur culture une incitation/invitation/demande plutôt qu’un ordre/commandement.
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
Toi aussi tu dois avoir du mal avec ces 0% ou ces 100% ; et toutes ces moyennes qui pleuvent sans précision (plage/étendu et écart-type/variance au moins) et se transforment même en normales…
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
Bah justement, dans cet exemple « on accède à une meilleure compréhension du texte source, moins ethnocentriste, plus étrange dans la langue de destination, mais plus proche du contenu source. » En anglais on se préoccupe plus du genre du parent (compréhension de la source) tandis qu’en français on regarde le genre de l’enfant (centrage sur la destination.) Accessoirement, ça montre sur qui chaque langue met l’accent (dans un cas on met le doigt sur le père et dans l’autre sur la fille.)
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
Comme je ne fais plus beaucoup de PHP et encore moins de Emacs, je vais peut-être répondre une bêtise en disant qu’il te fallait l’extension Geben …à l’instar de Christopher.
Le lisez-moi de Geben recommande Jade pour nodejs
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
Pour le nom/pseudo c’est “Gil Cot”/“gilcot”
Pour le mail, tu peux en utiliser un générique (genre contrib-ext@jakse.fr par exemple ?) …et jouter le lien vers cette discussion.
Merci tout plein :) J’en profite pour soumettre mon premier patch : which peut ne pas être présent sur certaines bécane (ce n’est pas requis par POSIX qui par contre demande que la fonctionnalité de base soit rendue par command -v interne au shell) comme MacOS…
- if [ -f "$(which nano)" ]; then+ if command -v nano >/dev/null; then
EDITOR=nano
- elif [ -f "$(which vim)" ]; then+ elif command -v vim >/dev/null; then
EDITOR=vim
- elif [ -f "$(which emacs)" ]; then+ elif command -v emacs >/dev/null; then
EDITOR=emacs
fi
En vrai, ce genre de truc je le fais plutôt ainsi (plus facile à étendre) :
if[ -z "$EDITOR"];thenfor prog in 'nano''jed''jove''vim''nvim''emacs';doifcommand -v $prog >/dev/null;thenEDITOR=$progbreakfidonefiexec"$EDITOR""${JOURNAL_FILE}"
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
En attendant que ça disparaisse, admirons le chemin parcouru : on ne te demande plus que ce soit manuscrit …pour voir si tu étais en médecine ou pour faire bosser les graphologues des boites qui en ont les moyens.
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: Programmation défensive en bash
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au journal Args parser pour shell. Évalué à 3.
Exact. Hormis cela, la commande ne râle pas si le dossier existe déjà, raison pour laquelle on peut zapper le test d’existence… En vrai on peut tester si la variable n’est pas vide (
-z
) ou si le chemin n’est pas déjà utilisé (-e
) pour ne pas tenter de remplacer un fichier par un répertoire (il y aura normalement une errreur mais bon.)En fait, pour rester dans l’esprit de l’exemple, j’aurais du simplement écrire :
mkdir "${mondossier}"
…parce-que l’option
-p
nécessite aussi une autre réserve : que le chemin ne soit pas sur un montage absent… La création va se faire mais on va s’arracher les cheveux par la suite…“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: Programmation défensive en bash
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au journal Args parser pour shell. Évalué à 4.
Héhé :) Si tu regardes bien, ce n’est pas exactement le même test
La forme
[[…]]
permet en effet de se prémunir des variables vides non “quoté”s …ou comportant des espaces, etc.Cette seconde forme se lit : vérifie si le répertoire existe, sinon crée le (et effectivement on ne fait rien s’il existe)
La première forme est littéralement : vérifie le contraire de si le répertoire existe (oui donc au final si le répertoire n’existe pas), puis alors crée le (sinon je passe)
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
# Updated 2024-02-14
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au lien PrivacyTests.org. Évalué à 4.
discussions précédentes 2023-02-03
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: Résumé
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au lien Unicode misconceptions. Évalué à 4.
C’est dommage dans le sens où la religion est contre la traduction par peur des contre-sens si j’ai bien compris. Du coup il faut aller à la source (donc lire et comprendre l’arabe de l’époque et de la région…) sinon c’est une blague (comme de bêtement réciter du bruit…)
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: Résumé
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au lien Unicode misconceptions. Évalué à 3.
Si si, un alphabet (au même terme que les systèmes d’écritures latin ou cyrillique) …qui a la particularité de ressembler à un alphasyllabaire comme le sont l’amharique (plus précisément le système d’écriture guèze ou ge'ez) et le devanagari par exemple.
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: Comparaison avec DeepL
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au message une alternative libre à google translate et autre site de traduction est arrivé. Évalué à 3.
L’expression en soi ne me parle pas (ou me plonge dans des interrogations philosophiques qui me font me demander si on a affaire à un droïde par exemple.) Dans le contexte présent (la phrase complète et les phrases autour), elle se comprend très bien (même si les natifs peuvent avoir l’impression de lire une sorte de « parler-nègre » comme on dit.)
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: Du rythme et du gazon
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au journal Doom et jardinage. Évalué à 3.
Tu veux plutôt dire que ça mesure correctement le tempo des rotors non ?
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: Logo
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse à la dépêche Un annuaire des producteurs locaux en Open-Source. Évalué à 4.
On n’était pas loin d’un igloo.
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: Un vœu pieux, mais une prise de conscience du politique
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au lien Leaders in Industry Support White House Call to Address Root Cause of Many of the Worst Cyber Attack. Évalué à 4. Dernière modification le 28 février 2024 à 05:04.
Tu sais bien que nous sommes des gentils… :->
rot13 est le moyen le plus simple (symétrie) et aisé/rapide (à scripter si on n’a pas quelque part un outil qui le fait) quand on n’a pas de balise à se poiler :-)
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: Programmation défensive en bash
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au journal Args parser pour shell. Évalué à 3.
Quand sera venu le moment, tu pourras ajouter à ta trousse d’outils :
bach
oubats
ouShellSpec
oushunit2
oukorn-spec
/bash-spec
ouzunit
etc. (tiens, ça pourrait faire l’objet d’un ou deux journaux si j’ai un peu de bande passante.)“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: Programmation défensive en bash
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au journal Args parser pour shell. Évalué à 4.
C’est simple… il suffit de savoir (ou se souvenir) que c’est pour l’argument… « If a character is followed by a , the option shall be expected to have an argument, which should be supplied as a separate argument. »
Donc,
abc:d
signifie que sont acceptés (dans n’importe quel ordre) :-a
,-b
,-d
,-c $Bidule
.Tandis que,
ab:c:d
signifie que sont acceptés (dans le désordre) :-a
,-d
,-b $Truc
,-c $Chose
.Il y a juste un cas particulier que l’on utilise très peu : en première position (donc concerne le script lui-même), ça va annuler/annihiler l’affichage normal des erreurs…
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: Programmation défensive en bash
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au journal Args parser pour shell. Évalué à 2.
Pour ce test, on peut faire directement portable (i.e. sans bashisme)
…et dans le cas présent on peut inverser (le test et l’enchaînement)
On peut même faire simplement (mais avec réserve… vous avez trouvé ?)
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: Un vœu pieux, mais une prise de conscience du politique
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au lien Leaders in Industry Support White House Call to Address Root Cause of Many of the Worst Cyber Attack. Évalué à 2.
Dhnaq p'rfg hgvyvfr cne yn AFN, pr a'rfg cnf har snvyyr znvf har srngher…
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: pourquoi ce nom ?
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse à la dépêche Comparatif : GrapheneOS vs LineageOS. Évalué à 2.
« Graphene is a one-atom-thick carbon sheet with incredible properties, but it is difficult and expensive to produce at large scales. » Un système qui se veut en même temps : solide (comme du Titane), léger, durable, sans surcouches inutiles, —bref « Graphene is an incredibly light, strong and durable material made of a single layer of carbon atoms. » (embauchez-moi comme communicator.)
Peut-être que la toxicité est pour les sales pirates (auquel cas ça aurait pu s’appeler arsenic aussi) ou un clin d’œil à la difficulté de conception ? ou autre ?
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: Portable pixmap
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au lien farbfeld : le format d'image le plus simple du monde. Évalué à 3.
Bah, il a dit que non et craché dessus, mais toi aussi t’es pas convaincu ?
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: emacs et le debug
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au journal Emacs, le dinosaure fait de la résistance. Évalué à 3.
Complément : le wiki (pas très à jour) évoque
GEBEN
aussi, mais rappelle également l’existence dudap-mode
à utiliser en conjonction aveclsp-mode
…“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: L
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au journal Tracim - développement d'une fonctionnalité "journal de bord" - envie de tester ?. Évalué à 3.
Oups… me suis pas bien relu pour le dollar en trop.
Merci pour avoir pris le temps d’éclairer mes interrogations ; c’est surtout que ça n’était pas clair (pour moi) que le projet s’appelle Ljournal.
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: Comparaison avec DeepL
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au message une alternative libre à google translate et autre site de traduction est arrivé. Évalué à 2.
La compréhension est leur nature qui parfois peut nous (français et pays latins en général) sembler obséquieuse : cette forme (impérative) est un dans leur culture une incitation/invitation/demande plutôt qu’un ordre/commandement.
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: Exponentielle
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au journal CPF, sans courrier, ni identité numérique, ni smartphone: idées?. Évalué à 2.
Toi aussi tu dois avoir du mal avec ces 0% ou ces 100% ; et toutes ces moyennes qui pleuvent sans précision (plage/étendu et écart-type/variance au moins) et se transforment même en normales…
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: Comparaison avec DeepL
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au message une alternative libre à google translate et autre site de traduction est arrivé. Évalué à 2.
Bah justement, dans cet exemple « on accède à une meilleure compréhension du texte source, moins ethnocentriste, plus étrange dans la langue de destination, mais plus proche du contenu source. » En anglais on se préoccupe plus du genre du parent (compréhension de la source) tandis qu’en français on regarde le genre de l’enfant (centrage sur la destination.) Accessoirement, ça montre sur qui chaque langue met l’accent (dans un cas on met le doigt sur le père et dans l’autre sur la fille.)
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: emacs et le debug
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au journal Emacs, le dinosaure fait de la résistance. Évalué à 3.
Comme je ne fais plus beaucoup de PHP et encore moins de Emacs, je vais peut-être répondre une bêtise en disant qu’il te fallait l’extension Geben …à l’instar de Christopher.
Le lisez-moi de Geben recommande Jade pour nodejs
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: L
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au journal Tracim - développement d'une fonctionnalité "journal de bord" - envie de tester ?. Évalué à 3.
Merci :)
Pour le nom/pseudo c’est “Gil Cot”/“gilcot”
Pour le mail, tu peux en utiliser un générique (genre contrib-ext@jakse.fr par exemple ?) …et jouter le lien vers cette discussion.
Je profite pour amender la ligne 25 ainsi
(mais pourquoi avoir choisi
Ljournalrc
au lieu deLrc
? en tout cas c’est à ce dernier que je me serais attendu…)“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: L
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au journal Tracim - développement d'une fonctionnalité "journal de bord" - envie de tester ?. Évalué à 7. Dernière modification le 24 février 2024 à 09:24.
Merci tout plein :) J’en profite pour soumettre mon premier patch :
which
peut ne pas être présent sur certaines bécane (ce n’est pas requis par POSIX qui par contre demande que la fonctionnalité de base soit rendue parcommand -v
interne au shell) comme MacOS…En vrai, ce genre de truc je le fais plutôt ainsi (plus facile à étendre) :
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: Des lettres de motivation ? En 2024 ?
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au journal Mon activité rêvée. Évalué à 4.
En attendant que ça disparaisse, admirons le chemin parcouru : on ne te demande plus que ce soit manuscrit …pour voir si tu étais en médecine ou pour faire bosser les graphologues des boites qui en ont les moyens.
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: Profite de tes impôts
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au journal CPF, sans courrier, ni identité numérique, ni smartphone: idées?. Évalué à 4. Dernière modification le 24 février 2024 à 08:54.
Voilà pourquoi il y a un + : plus casse-pied, pardon sécure-mon-œil
“It is seldom that liberty of any kind is lost all at once.” ― David Hume