logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#26 15-03-2015 17:09:51

enicar
Membre
Lieu : pas ici
Distrib. : sid
Noyau : Linux 6.5.3
(G)UI : openbox
Inscription : 26-08-2010

Re : bash, while, vlc et compagnie

Oui, bien sûr.

Hors ligne

#27 15-03-2015 17:12:33

Guizmo
Membre
Lieu : Mello dans l'Oise
Distrib. : Jessie
Noyau : Linux 3.2.0-4-686-pae
Inscription : 03-02-2015

Re : bash, while, vlc et compagnie

Bon ben j'ai de quoi bosser ! smile

Je suis débutant, si à la lecture d'un de mes postes vous avez des suggestions, des liens à me donner ou n'importe quoi qui puisse me faire avancer, n'hésitez pas ! !
Merci smile

Hors ligne

#28 15-03-2015 17:12:37

enicar
Membre
Lieu : pas ici
Distrib. : sid
Noyau : Linux 6.5.3
(G)UI : openbox
Inscription : 26-08-2010

Re : bash, while, vlc et compagnie

Guizmo a écrit :



f=/home/laurent/Vidéos/*
echo "$f"
 



me renvoie


/home/laurent/Vidéos/*
 


et donc, tu en conclus quoi ? À quel moment la génération des noms de fichiers a-t-elle lieu ?

Dernière modification par enicar (15-03-2015 17:59:26)

Hors ligne

#29 15-03-2015 17:47:16

Guizmo
Membre
Lieu : Mello dans l'Oise
Distrib. : Jessie
Noyau : Linux 3.2.0-4-686-pae
Inscription : 03-02-2015

Re : bash, while, vlc et compagnie

Je te détail ce que je comprends
Lorsque que je tape /home/laurent/Vidéos/* "entrée"
bash ne me liste pas le contenu de "Vidéos" et m'affiche un seul film accompagné de :

bash: /home/laurent/Vidéos/22.Jump.Street.avi: Permission non accordée


par contre lorsque je fais

f=/home/laurent/Vidéos/*
echo $f #sans les guillemets


Là il me liste le contenu de Vidéos, j'aurais tendance à penser que j'ai un paramètre dans le retour de shopt qui n'est pas bien positionné (je pense à nullglobe, mais je ne voudrais pas faire de conneries)
Avec les guillemets il interprète la chaine de caractère et non la variable... roll
Donc il me semble que l'enregistrement de la liste se fait lorsque je fais

f=/home/laurent/Vidéos/*

Dernière modification par Guizmo (15-03-2015 17:58:21)


Je suis débutant, si à la lecture d'un de mes postes vous avez des suggestions, des liens à me donner ou n'importe quoi qui puisse me faire avancer, n'hésitez pas ! !
Merci smile

Hors ligne

#30 15-03-2015 18:09:10

enicar
Membre
Lieu : pas ici
Distrib. : sid
Noyau : Linux 6.5.3
(G)UI : openbox
Inscription : 26-08-2010

Re : bash, while, vlc et compagnie

Ça n'a rien à voir avec les shopt…

Guizmo a écrit :


je te détail ce que je comprends
Lorsque que je tape /home/laurent/Vidéos/* "entrée"
bash ne me liste pas le contenu de "Vidéos" et m'affiche un seul film accompagné de :


    bash: /home/laurent/Vidéos/22.Jump.Street.avi: Permission non accordée
 


Normal, le fichier 22.Jump.Street.avi n'a pas probablement le droit d'être exécuté…
Vérifie les droits avec :


ls -l  /home/laurent/Vidéos/22.Jump.Street.avi
 


En plus un fichier au format avi, n'est certainement pas un fichier exécutable !

Quand tu fais :


f=/home/laurent/Vidéos/*
 


Bash stocke dans la variable f la chaine « /home/laurent/Vidéos/* », ni plus ni moins.

Donc,


echo $f
 


va permettre au motif d'être interprété par bash.

Par contre


echo "$f"
 


comme la variable est protégée, bash fait juste la substitution par la valeur de la variable, puis
il ne fait plus d'autre substitution. Et donc ça affiche, juste le contenu de la variable $f

Dernière modification par enicar (15-03-2015 18:16:50)

Hors ligne

#31 15-03-2015 18:18:07

enicar
Membre
Lieu : pas ici
Distrib. : sid
Noyau : Linux 6.5.3
(G)UI : openbox
Inscription : 26-08-2010

Re : bash, while, vlc et compagnie

En fait, il y a un troisième cas de figure intéressant. Que fait le code suivant :


echo '$f'
 


et surtout pourquoi ?

Dernière modification par enicar (15-03-2015 18:18:34)

Hors ligne

#32 15-03-2015 18:31:39

Guizmo
Membre
Lieu : Mello dans l'Oise
Distrib. : Jessie
Noyau : Linux 3.2.0-4-686-pae
Inscription : 03-02-2015

Re : bash, while, vlc et compagnie

ls -l me renvoie

-rw-r--r-- 1 laurent laurent


À savoir que je suis seul utilisateur de ce pc et que ROOT=NO PASSWORD...
Je ne sais pas ce que veut dire le "1" après le rw-r..;etc.


Je suis débutant, si à la lecture d'un de mes postes vous avez des suggestions, des liens à me donner ou n'importe quoi qui puisse me faire avancer, n'hésitez pas ! !
Merci smile

Hors ligne

#33 15-03-2015 18:35:02

Guizmo
Membre
Lieu : Mello dans l'Oise
Distrib. : Jessie
Noyau : Linux 3.2.0-4-686-pae
Inscription : 03-02-2015

Re : bash, while, vlc et compagnie

En fait, il y a un troisième cas de figure intéressant. Que fait le code suivant :


echo '$f'


et surtout pourquoi ?


Là ou j'en suis, je n'ai pas d'autre explications que:
Avec les guillemets il interprète juste la chaine de caractères...
De la mm manière qu'avec

echo "/home/laurent/Vidéos/*"


Ça me revoie à une de tes explications où

echo je vais bien


sera traité comme 3 paramètres
Alors que

echo "je vais bien"


comme un seul
Et

echo '$f'


Empêche carrément la lecture de la variable...
Interrogation écrite !lol big_smile
Mais c'est bien ça m'aide à fixer mes acquis smile
Je ne sais pas si on est bcp à fonctionner comme moi, mais une rubrique "apprentissage bash" (avec enicar comme prof !) serait appropriée.
Et là enicar :"c'est bon, j'en ai assez d'un, manquerait plus qu'ils s'y mettent à 10 !" lol

Dernière modification par Guizmo (15-03-2015 18:51:57)


Je suis débutant, si à la lecture d'un de mes postes vous avez des suggestions, des liens à me donner ou n'importe quoi qui puisse me faire avancer, n'hésitez pas ! !
Merci smile

Hors ligne

#34 15-03-2015 19:06:39

enicar
Membre
Lieu : pas ici
Distrib. : sid
Noyau : Linux 6.5.3
(G)UI : openbox
Inscription : 26-08-2010

Re : bash, while, vlc et compagnie

Enfin, les profs, eux, sont payés… ça fait trop de boulot pour le faire
bénévolement.

Hors ligne

#35 15-03-2015 19:35:19

Guizmo
Membre
Lieu : Mello dans l'Oise
Distrib. : Jessie
Noyau : Linux 3.2.0-4-686-pae
Inscription : 03-02-2015

Re : bash, while, vlc et compagnie

C'est sûr...

Je suis débutant, si à la lecture d'un de mes postes vous avez des suggestions, des liens à me donner ou n'importe quoi qui puisse me faire avancer, n'hésitez pas ! !
Merci smile

Hors ligne

#36 15-03-2015 21:02:18

Anonyme-8
Invité

Re : bash, while, vlc et compagnie

enicar a écrit :

Enfin, les profs, eux, sont payés… ça fait trop de boulot pour le faire
bénévolement.



Je pense que l'asso DF peut t'embaucher. Les conditions sont plutôt intéressante, paiement en point choco et payable à la fin de chaque release et les horaires sont libres. Bref, tu peux pas trouver mieux.

Tes contributions sont toujours très utiles et très intéressantes. Continue comme ça big_smile

#37 15-03-2015 21:24:01

enicar
Membre
Lieu : pas ici
Distrib. : sid
Noyau : Linux 6.5.3
(G)UI : openbox
Inscription : 26-08-2010

Re : bash, while, vlc et compagnie

Anonyme-8 a écrit :


Tes contributions sont toujours très utiles et très intéressantes. Continue comme ça big_smile



Merci, pour tes encouragements smile

Hors ligne

#38 16-03-2015 11:39:46

enicar
Membre
Lieu : pas ici
Distrib. : sid
Noyau : Linux 6.5.3
(G)UI : openbox
Inscription : 26-08-2010

Re : bash, while, vlc et compagnie

Guizmo a écrit :

ls -l me renvoie


-rw-r--r-- 1 laurent laurent
 


À savoir que je suis seul utilisateur de ce pc et que ROOT=NO PASSWORD...
Je ne sais pas ce que veut dire le "1" après le rw-r..;etc.



Je suppose que le ROOT=NO PASSWORD, ça concerne sudo…
Ce que dit ls, n'a rien à voir avec cela.

Ça serait bien que tu lises cette documentation qui est bien faite :
Cours unix

En attendant que j'écrive une doc sur le wiki à ce sujet.
Il me semble avoir déjà, écrit une brève explication sur la signification
sur la sortie de « ls -l » dans un de mes posts sur le forum…

Dernière modification par enicar (16-03-2015 11:42:05)

Hors ligne

#39 16-03-2015 17:12:19

vv222
Administrateur
Lieu : Bretagne
Distrib. : Debian Sid
(G)UI : sway
Inscription : 18-11-2013
Site Web

Re : bash, while, vlc et compagnie

Guizmo a écrit :

ls -l me renvoie

-rw-r--r-- 1 laurent laurent


À savoir que je suis seul utilisateur de ce pc et que ROOT=NO PASSWORD...
Je ne sais pas ce que veut dire le "1" après le rw-r..;etc.


Le '1' donne le nombre de liens "durs" vers ce fichier. (liens créés via 'ln')
https://www.gnu.org/software/coreutils/ … invocation


Jouer sous Debian ? Facile !

Ceterum censeo Barum esse delendam

En ligne

#40 16-03-2015 17:41:48

Guizmo
Membre
Lieu : Mello dans l'Oise
Distrib. : Jessie
Noyau : Linux 3.2.0-4-686-pae
Inscription : 03-02-2015

Re : bash, while, vlc et compagnie

lol Je vote pour ! ! big_smile

Anonyme-8 a écrit :

Je pense que l'asso DF peut t'embaucher. Les conditions sont plutôt intéressante, paiement en point choco et payable à la fin de chaque release et les horaires sont libres. Bref, tu peux pas trouver mieux.



@enicar
J'ai vu qqu part que l'on peut donner des droits avec des chiffres de 1 à 7 me semble...
Je sais que les rw--r--r-- sont des colonnes dont la 1ère correspond à root, les autres doivent être pour les simples utilisateurs (sur mon pc il n'y a que "laurent user" et "laurent root"...!? pourquoi 3 colonnes dans ce cas...?)
Je vais regarder les cours unix !
Et tu viens de me donner l'idée d'éplucher tes postes sur les sujets qui m'intéressent ! smile
J'ai tellement de trucs à assimiler et de sources pour y arriver (merci enicar !) que je fini par ne plus savoir ou donner de la tête ! smile


Je suis débutant, si à la lecture d'un de mes postes vous avez des suggestions, des liens à me donner ou n'importe quoi qui puisse me faire avancer, n'hésitez pas ! !
Merci smile

Hors ligne

#41 16-03-2015 18:16:30

Guizmo
Membre
Lieu : Mello dans l'Oise
Distrib. : Jessie
Noyau : Linux 3.2.0-4-686-pae
Inscription : 03-02-2015

Re : bash, while, vlc et compagnie

Oup's J'avais pas vu VV222

VV222 a écrit :

Le '1' donne le nombre de liens "durs" vers ce fichier. (liens créés via 'ln')


Merci à toi aussi pour le lien ! smile
Par contre je n'ai pas créé de lien via ln ou autrement (que je sache...)
Je vais lancer une recherche ac find, il devrait me trouver les 2 !... Ou pas... yikes


Je suis débutant, si à la lecture d'un de mes postes vous avez des suggestions, des liens à me donner ou n'importe quoi qui puisse me faire avancer, n'hésitez pas ! !
Merci smile

Hors ligne

#42 16-03-2015 19:04:43

Guizmo
Membre
Lieu : Mello dans l'Oise
Distrib. : Jessie
Noyau : Linux 3.2.0-4-686-pae
Inscription : 03-02-2015

Re : bash, while, vlc et compagnie

Je viens de faire :

find  /home/laurent/* -lname "22.Jump.Street.avi"


Je n'ai rien en retour, après tu me parle de lien dur et non de liens symboliques...
J'ai tenté une bidouille avec "%n", sans succès.


Je suis débutant, si à la lecture d'un de mes postes vous avez des suggestions, des liens à me donner ou n'importe quoi qui puisse me faire avancer, n'hésitez pas ! !
Merci smile

Hors ligne

#43 16-03-2015 19:12:53

Guizmo
Membre
Lieu : Mello dans l'Oise
Distrib. : Jessie
Noyau : Linux 3.2.0-4-686-pae
Inscription : 03-02-2015

Re : bash, while, vlc et compagnie

Du coup je peux toujours chercher:

Un lien est un autre nom pour un fichier existant; le lien et l'original sont indiscernables.


Y'a bien un moyen de le trouver non ?:|


Je suis débutant, si à la lecture d'un de mes postes vous avez des suggestions, des liens à me donner ou n'importe quoi qui puisse me faire avancer, n'hésitez pas ! !
Merci smile

Hors ligne

#44 16-03-2015 20:14:19

Severian
Membre
Distrib. : Debian GNU/Linux 9.4 (stretch)
Noyau : Linux 4.14.0-0.bpo.3-amd64
(G)UI : Openbox 3.6.1-4
Inscription : 13-12-2014

Re : bash, while, vlc et compagnie

Guizmo a écrit :

lol Je vote pour ! ! big_smile

Anonyme-8 a écrit :

Je pense que l'asso DF peut t'embaucher. Les conditions sont plutôt intéressante, paiement en point choco et payable à la fin de chaque release et les horaires sont libres. Bref, tu peux pas trouver mieux.



@enicar
J'ai vu qqu part que l'on peut donner des droits avec des chiffres de 1 à 7 me semble...
Je sais que les rw--r--r-- sont des colonnes dont la 1ère correspond à root, les autres doivent être pour les simples utilisateurs (sur mon pc il n'y a que "laurent user" et "laurent root"...!? pourquoi 3 colonnes dans ce cas...?)
Je vais regarder les cours unix !
Et tu viens de me donner l'idée d'éplucher tes postes sur les sujets qui m'intéressent ! smile
J'ai tellement de trucs à assimiler et de sources pour y arriver (merci enicar !) que je fini par ne plus savoir ou donner de la tête ! smile



bonsoir
si j'ai bien compris
le premier caractère indique si c'est "d" un dossier, "-" un fichier, "l" un lien
les 3 suivant sont pour les droits du propriètaire
les 3 du milieu pour les droits du groupe
les trois derniers pour les autres (programmes ou personnes)

pour les correspondances chiffré :
Correspondances de représentation des droits
Droit     Valeur alphanumérique     Valeur octale
aucun droit     ---     0
exécution seulement     --x     1
écriture seulement     -w-     2
écriture et exécution     -wx     3
lecture seulement     r--     4
lecture et exécution     r-x     5
lecture et écriture     rw-     6
tous les droits (lecture, écriture et exécution)     rwx     7

(http://fr.wikipedia.org/wiki/Chmod)

donc un
chmod 752 mon-fichier  te donnera les droits totaux au proprio, lecture / execution aux groupes, lecture pour les autres

edit :
si je ne me trompe pas, un ls -lh te donnera le liens et la cible

Dernière modification par Severian (16-03-2015 20:15:27)

Hors ligne

#45 16-03-2015 20:23:53

vv222
Administrateur
Lieu : Bretagne
Distrib. : Debian Sid
(G)UI : sway
Inscription : 18-11-2013
Site Web

Re : bash, while, vlc et compagnie

Guizmo a écrit :

Oup's J'avais pas vu VV222

VV222 a écrit :

Le '1' donne le nombre de liens "durs" vers ce fichier. (liens créés via 'ln')


Merci à toi aussi pour le lien ! smile
Par contre je n'ai pas créé de lien via ln ou autrement (que je sache...)


D’où la valeur de 1, il y a forcément un lien au minimum.
Tu peux voir les liens comme des chemins d’accès vers un fichier, c’est ce qui fait la correspondance /chemin/nom-de-fichier -> inode. Si la valeur est supérieure à 1, c’est que tu as plusieurs chemins pour accéder à un même fichier. C’est le cas par exemple des répertoires qui ont toujours au moins deux liens permettant d’y accéder.
Par exemple, je peux accéder à ~/bin par ~/bin (évidemment), mais aussi par ~/bin/. (ce qui fait deux liens). Si j’y crée un sous-répertoire je passerai à trois liens :
_ ~/bin
_ ~/bin/.
_ ~/bin/sous-répertoire/..

Je sais que c’est un concept un peu difficile à assimiler si on ne comprend pas bien le système d’inodes utilisé par nos systèmes de fichiers, tes éventuelles questions sont donc les bienvenues wink

Dernière modification par vv222 (16-03-2015 20:24:46)


Jouer sous Debian ? Facile !

Ceterum censeo Barum esse delendam

En ligne

#46 16-03-2015 22:16:41

enicar
Membre
Lieu : pas ici
Distrib. : sid
Noyau : Linux 6.5.3
(G)UI : openbox
Inscription : 26-08-2010

Re : bash, while, vlc et compagnie

Guizmo a écrit :

Y'a bien un moyen de le trouver non ?:|



Non, à part en regardant les dates de créations (c'est un abus de langage,mais passons wink)
Mais il faut bien comprendre que l'information que contient le fichier est contenu dans des blocs sur le disques.
L'information où se trouve ces blocs, est contenu dans un ensemble d'inode
(sous forme de numéro de bloc).
Cet ensemble d'inode a un inode racine qui sert à repérer le fichier.
Un répertoire fait correspondre un chemin (le nom du fichier)  avec l'inode racine.
De cet façon on peut avoir plusieurs noms pour le même fichier. Ces différents noms
pointent sur le même inode racine. Et en particulier, quand tu changes ce fichier
en utilisant un chemin précis, tu modifie l'information de ces blocs de données et/ou
sa liste d'inodes. Comme l'autre nom correspond aux mêmes inodes et donc aux mêmes
blocs de données, on voit bien qu'ils sont indiscernables.

Faire un lien en dur n'est possible que sur le même système de fichier, c'est à dire
sur la même partition. Et ça n'a rien à voir avec faire une copie…

Dernière modification par enicar (17-03-2015 10:35:17)

Hors ligne

#47 17-03-2015 10:32:14

enicar
Membre
Lieu : pas ici
Distrib. : sid
Noyau : Linux 6.5.3
(G)UI : openbox
Inscription : 26-08-2010

Re : bash, while, vlc et compagnie

Il est possible de voir le numéro de ce premier inode d'un fichier (que j'appelle abusivement
l'inode racine) grâce à la commande « ls » et l'option « -i ».

On va faire une petite expérience. Essayons le code suivant depuis un shell :


touch machin-bidule
ln machin-bidule truc-chose
ls -i machin-bidule truc-chose
 


  • « touch » va créer un fichier vide nommé « machin-bidule ». C'est un effet de bord, cette commande sert à modifier les différents horodatages  d'un fichier.

  • « ln »va créer un lien en dur nommé « truc-chose », qui va donc désigner le même fichier que « machin-bidule ».

  • « ls -i » permet de lister les fichiers en faisant précéder chaque nom de fichier par son numéro  « d'inode racine ».



Tu peux vérifier que les deux chemins « machin-bidule » et « truc-chose » ont le même numéro
« d'inode racine ».

On peut même aller encore un peu plus loin. À présent, modifions le contenu du fichier « machin-bidule » :


echo "je suis machin-bidule" >>machin-bidule
cat machin-bidule
 


Ça affiche bien « je suis machin-bidule », le fichier a bien été modifié.
On regarde ce qu'il y a dans « truc-chose » :


cat truc-chose
 


Ça affiche également « je suis machin-bidule » !
Lorqu'on modifie l'un, l'autre est modifié, car les deux liens désignent en réalité
le même ensemble d'inodes et donc de blocs sur le disque.
On peut vérifier à nouveau les numéros d'inodes :


ls -i machin-bidule truc-chose
 


Les numéros d'inode sont toujours les mêmes, normal wink

Enfonçons le clou. Si on supprime « machin-bidule » :


rm machin-bidule
cat truc-chose
 


Ça affiche encore « je suis machin-bidule ». Le fichier existe toujours, mais il n'est accessible
que par le chemin « truc-chose ». Prouvons le :


cat machin-bidule
 


Ça produit le message d'erreur suivant :


cat: machin-bidule: Aucun fichier ou dossier de ce type
 



Regardons le numéro d'inode de truc-chose :


ls -i truc-chose
 


Le numéro d'inode ne devrait pas avoir changé wink

Dernière modification par enicar (17-03-2015 10:33:48)

Hors ligne

#48 17-03-2015 10:43:52

enicar
Membre
Lieu : pas ici
Distrib. : sid
Noyau : Linux 6.5.3
(G)UI : openbox
Inscription : 26-08-2010

Re : bash, while, vlc et compagnie

J'ai retrouvé le message où je parle du décodage de la sortie de « ls -l ». Donc
en complément de ce que disais Severian, je propose de ragarder ce que je disais :
http://debian-facile.org/viewtopic.php? … 38#p110638

Hors ligne

#49 17-03-2015 19:07:35

Guizmo
Membre
Lieu : Mello dans l'Oise
Distrib. : Jessie
Noyau : Linux 3.2.0-4-686-pae
Inscription : 03-02-2015

Re : bash, while, vlc et compagnie

Merci à tous ! smile
Je n'ai pas tt lu, je suis mort et je vais passer à table puis dodo (demain levé 4h) vie de merde...
Mais je viens de comprendre que les fichiers qui s'affichent dans mes fenêtres graphiques sont des liens en soi qui pointent vers l'inode si je ne me trompe pas
Je lirai tout ça demain (et je prends du retard vu ttes les doc, tuto et cours qu'on m'a filé !
C'est de la faute à enicar !
Geek à longue barbe bienveillant  big_smile
Euh... Bravo pour ta démo "ln/inode enicar wink

Dernière modification par Guizmo (17-03-2015 19:54:24)


Je suis débutant, si à la lecture d'un de mes postes vous avez des suggestions, des liens à me donner ou n'importe quoi qui puisse me faire avancer, n'hésitez pas ! !
Merci smile

Hors ligne

#50 20-03-2015 22:43:30

enicar
Membre
Lieu : pas ici
Distrib. : sid
Noyau : Linux 6.5.3
(G)UI : openbox
Inscription : 26-08-2010

Re : bash, while, vlc et compagnie

Guizmo a écrit :

Euh... Bravo pour ta démo "ln/inode enicar wink


Merci. Je pourrais encore rajouter des choses, mais bon, je vois que que tu as compris
la différence entre inodes, liens et chemins. C'est un point important smile

Hors ligne

Pied de page des forums