#1 Le 03/09/2009, à 08:52
[résolu]exécution d'un script
Bonjour,
On me demande ce que fait le programme suivant :
#!/bin/sh
for i in 'cut -fl -d/etc/passwd'
do
echo $i
doneEn fait ça ne fait que m'afficher cut -fl -d/etc/passwd ? ça devrait me faire autre chose normalement ?
Dernière modification par yanick_cangaeld (Le 06/09/2009, à 11:47)
Hors ligne
#2 Le 03/09/2009, à 09:51
Re : [résolu]exécution d'un script
#!/bin/sh
for i in `cut -f1 -d: /etc/passwd`
do
echo $i
doneVersion corrigée.
Tagazok à toi, mon frère !
Hors ligne
#3 Le 03/09/2009, à 10:04
Re : [résolu]exécution d'un script
@Hawkmoon : nice catch..
@yannick_cangaeld : c'est la liste des utilisateurs...
Hors ligne
#4 Le 03/09/2009, à 10:06
Re : [résolu]exécution d'un script
Je ne comprends pas ?
Tu as fait quelles modifications et pourquoi mon code ne fonctionnait pas ?
Hors ligne
#5 Le 03/09/2009, à 10:27
Re : [résolu]exécution d'un script
Je ne comprends pas ?
Tu as fait quelles modifications et pourquoi mon code ne fonctionnait pas ?
Il manque le séparateur après le -d et un espace de séparation avec /etc/passwd
Sinon, tu peux aussi faire :
cat /etc/passwd | cut -f1 -d:
C'est depuis que Chuck Norris a laissé la vie sauve à un manchot que l'on dit que Linux est libre.
Chuck Norris n'a pas besoin d'éditer son premier message pour ajouter [Résolu]. Chuck Norris est toujours [Résolu], quoi qu'il arrive.
Hors ligne
#6 Le 03/09/2009, à 10:56
Re : [résolu]exécution d'un script
yanick_cangaeld a écrit :Je ne comprends pas ?
Tu as fait quelles modifications et pourquoi mon code ne fonctionnait pas ?Il manque le séparateur après le -d et un espace de séparation avec /etc/passwd
Sinon, tu peux aussi faire :
cat /etc/passwd | cut -f1 -d:
Et également il a mis des ` (accent grave) à la place des ' (apostrophe droite) dans la ligne :
for i in `cut -f1 -d: /etc/passwd`cela signifie que la sortie de la commande "cut" est prise comme paramètres du "for". Alors qu'avec tes apostrophes, il ne se passera rien.
Linux-Mint Maya 64 Cinnamon sur Toshiba Satellite P200-1BY. Linux-Mint Nadia 64 Cinnamon sur Compaq Presario SR5617FR
Hors ligne
#7 Le 03/09/2009, à 10:58
Re : [résolu]exécution d'un script
Sinon, tu peux aussi faire :
cat /etc/passwd | cut -f1 -d:
Quel horreur !
-- Lucid Lynx --
Hors ligne
#8 Le 03/09/2009, à 12:11
Re : [résolu]exécution d'un script
iuchiban a écrit :Sinon, tu peux aussi faire :
cat /etc/passwd | cut -f1 -d:Quel horreur !
c'est vrai que
cut -f1 -d: /etc/passwdfonctionne aussi ![]()
C'est depuis que Chuck Norris a laissé la vie sauve à un manchot que l'on dit que Linux est libre.
Chuck Norris n'a pas besoin d'éditer son premier message pour ajouter [Résolu]. Chuck Norris est toujours [Résolu], quoi qu'il arrive.
Hors ligne
#9 Le 03/09/2009, à 13:31
Re : [résolu]exécution d'un script
Ce n'est pas le côté fonctionnel que je remets en cause mais l'utilisation de l'instruction cat.
Quasiment toutes les instructions acceptent un (ou plusieurs) fichier(s) en paramètre qui sera (seront) utilisé(s) comme flux d'entrée. C'est le cas de cut. Il est donc vraiment inutile d'utiliser cat en combinaison du |.
Je vois trop souvent cette erreur avec l'emploi de grep...
-- Lucid Lynx --
Hors ligne
#10 Le 05/09/2009, à 18:28
Re : [résolu]exécution d'un script
Le programme me donne cette liste comme résultat :
root
daemon
bin
sys
sync
games
man
lp
mail
news
uucp
proxy
www-data
backup
list
irc
gnats
nobody
libuuid
syslog
klog
hplip
avahi-autoipd
gdm
saned
pulse
messagebus
polkituser
avahi
haldaemon
yannick
Ce sont tous des utilisateurs ?
Hors ligne
#11 Le 05/09/2009, à 20:46
Re : [résolu]exécution d'un script
Ben oui...
(j'ai les mêmes, avec mysql en plus).
Cela sert entre autre à différencier les droits (la liste est sensiblement la même pour les groupes d'ailleurs).
Hors ligne
#12 Le 05/09/2009, à 23:10
Re : [résolu]exécution d'un script
ok
mais je croyais que cut permettait de découper un fichier et non de l'afficher ?
Hors ligne
#13 Le 06/09/2009, à 01:47
Re : [résolu]exécution d'un script
mais je croyais que cut permettait de découper un fichier et non de l'afficher ?
Il découpe ce qu'on lui donne. Si on lui donne un fichier, il découpe le fichier et il ressort le résultat sur la sortie standard. Si on ne lui donne rien, il attend des données sur l'entrée standard, qui peut être le clavier (le terminal) ou un autre programme à l'aide d'un pipe.
Hors ligne
#14 Le 06/09/2009, à 11:46
Re : [résolu]exécution d'un script
ok merci
Hors ligne
Pages : 1
- Accueil
- » Forum
- » Terminal, scripts et ligne de commande
- » [résolu]exécution d'un script