49 lines
4.1 KiB
HTML
49 lines
4.1 KiB
HTML
<!DOCTYPE html>
|
||
<html lang="fr">
|
||
<head>
|
||
<meta charset="utf-8">
|
||
<title>Lundi 24 janvier 2022 - Elsif.fr</title>
|
||
<meta name="DC.title" content="elsif.fr, site de Yannick François aka yaf (ou ya_f)."/>
|
||
<meta name="description" content="Le site de Yannick François. Développeur Senior, Responsable Produit, Pédagogue. Je travail chez Scopyleft"/>
|
||
<meta name="keywords" content="code, développement, programmation, apprentissage, apprendre, lean, agile, logiciel, tdd, objet, refactoring, libre, creative commons, linux, unix"/>
|
||
<meta name="author" content="Yannick François, https://elsif.fr"/>
|
||
<meta name="designer" content="Yannick François, https://elsif.fr"/>
|
||
<meta name="geo.placename" content="Poissy, Ile de france, France"/>
|
||
<meta name="robots" content="index,follow" />
|
||
<meta name="language" content="French" />
|
||
<meta name="HandheldFriendly" content="True" />
|
||
<meta name="MobileOptimized" content="320" />
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=0, minimum-scale=1.0, maximum-scale=1.0" />
|
||
<link rel="index" title="Yannick François / Développeur / Pédagogue" href="index.html" />
|
||
<link rel="alternate" type="application/rss" href="/feed.xml" title="elsif.fr/feed" />
|
||
<style>
|
||
body {
|
||
font-size:16pt;
|
||
max-width:42rem;
|
||
min-width: 18rem;
|
||
margin: 1em;
|
||
color: black;
|
||
background: white;
|
||
font-family: Palatino, "Palatino Linotype", "Palatino LT STD", "Book Antiqua", Georgia, serif;
|
||
}
|
||
a { color: darkred; }
|
||
a:hover { background: gold; }
|
||
a:visited, a:active { color: dimgrey; }
|
||
nav { text-align:center; font-size:smaller; padding: 0; margin: 0; }
|
||
nav li { list-style-type: none; }
|
||
h2 > a, h2 > a:active, h2 > a:visited { color: lightgrey; text-decoration:none;}
|
||
h2 > a:hover { color: black; text-decoration:underline }
|
||
|
||
@media (max-width: 1000px) { #portrait {display:none;} }
|
||
</style>
|
||
</head>
|
||
<body>
|
||
<article>
|
||
<h1>Lundi 24 janvier 2022</h1>
|
||
<p>[Core Team] Officier Azarov:drapeau_arc_en_ciel: Hier à 17 h 34 Salut ! Je suis un cours à la fac et je bute sur une question de shell assez basique. Si quelqu’un·e peut m’éclairer, je suis preneuse ! L’énoncé : Dupont a fait une erreur de frappe, il a saisie la commande mv a b/* au lieu de mv b/* a. Que se passe-t-il si b est un répertoire contenant 3 sous-répertoires et aucun autre fichier ? Expliquez pourquoi cela se produit. Dans mon terminal : J’ai un répertoire a et un répertoire b, qui a lui-même 3 sous-répertoires : c, d et e. Soit visuellement : a b c d e Quand je tape mv a b/*, a est déplacé dans un des sous-répertoires de b (le dernier, selon l’ordre alphabétique). Les deux autres sous-répertoires de b sont déplacés dans ce sous-répertoire également. Soit visuellement : b e a c d Est-ce qu’une bonne âme aurait une idée de pourquoi ça arrive ? (et aussi, déjà, avez-vous les mêmes résultats chez vous ?) (interrogations existentielles, bonsoir)</p>
|
||
<p>Anh-Vu il y a 14 heures hello, le comportement que tu observes est tout à fait normal et déterministe, heureusement ! dans ton shell b/* est remplacé par la liste des répertoires b/c b/d b/e avant d’appeler la commande mv . Aussi le dernier argument de mv est le répertoire de destination. Donc quand tu appelles mv a b/<em> le shell traduit en mv a b/c b/d b/e et mv comprend qu’il faut déplacer a b/c b/d dans b/e Aussi le shell assure que le remplacement de b/</em> est dans l’ordre alphabétique des occurences trouvées (modifié)</p>
|
||
<p>En général, un bout de code est analysé à partir de la droite (c’est un raccourci que je prends). Par contre, c’est vrai qu’il faut savoir que b/* est une expression qui va être évalué… c’est pas forcement évidant :slightly_smiling_face: (et j’ajoute ceci parce que le shell est un langage de programmation comme un autre, à ceci prêt que l’on passe notre temps dans son interpréteur à écrire une instruction à la fois et rarement dans un fichier à écrire plusieurs ligne, contrairement aux autres langages :))</p>
|
||
</article>
|
||
</body>
|
||
</html>
|