je cherche à faire un 'ls' recursif sous linux
y en a qui peuvent m'aider?
Publicité
Posté le 08-01-2001 à 21:50:14
omega2
Posté le 08-01-2001 à 22:10:35
ls -r
Robinmasters
Posté le 08-01-2001 à 22:26:09
c'est gentil mais je voudrais voir comment ca se programme.
Le code quoi...
merci.
a+
Robinmasters
Posté le 08-01-2001 à 23:21:06
en passant en parametre le repertoire à scruter...
je cherche ...
JWhy
je peux plier (héhé)
Posté le 08-01-2001 à 23:38:14
t'as un langage de prédilection ou c'est du shell ou quoi ?
Robinmasters
Posté le 09-01-2001 à 00:00:08
Le langage c'est le shell.
Je crée un fichier executable
et je le lance: du style lsrec /home/toto
/home/toto comme parametre
j'arrive pas à trouver...
omega2
Posté le 09-01-2001 à 12:40:21
Dans ton fichier shell, tu écris "ls -r $1 $2"
Il cherchera en récursif en prenant comme paramêtre les deux premiers que tu lui donne.
Robinmasters
Posté le 09-01-2001 à 13:48:47
je cherche le prog source!!!!
et si tu utilise ls il n'y a aucun interet!!!!!!!!!!!!!!
theetete
Posté le 09-01-2001 à 15:26:06
robinmasters a écrit a écrit :
je cherche le prog source!!!!
donc en C ?
krolours1
Posté le 09-01-2001 à 15:33:34
find ?
Publicité
Posté le 09-01-2001 à 15:33:34
Robinmasters
Posté le 09-01-2001 à 15:38:27
je reprends tout à zero.
j'ai besoin de savoir quel est le code en shell
permettant de faire un ls d'un rep passé en parametre.
j'aurai alors un fichier qui contient mon code.
je le rends executable et je lance ./monfic /home/moi
le langage c'est le shell pas le c
de plus il ne faut pas utiliser les fonctions C.
enfin, le prog doit etre fait en recursif.
ps: il ne s'agit pas d'un programme à rendre pour mon prof.
j'ai un exam demain et je suis sur que ca va tomber
je cherche donc et si vous pouviez me mettre sur la voie ce serait sympa.
voila
a+
kadreg
profil: Utilisateur
Posté le 09-01-2001 à 16:02:01
find . -name * -print
Sinon, en shell ksh pur (pas sur de la syntaxe, j'ai pas de
shell correct sous la main, mais l'idée y est
Le fichier s'appelle dirrec.sh, il prend un paramètre, le répertoire ou commencer (utiliser . pour le rep courant).
for i in $1 do
if [ -d $i ]
ssdirrec.sh $i
else
ssecho $1/$i
fi
done
jupiler
Un cousin...
Posté le 09-01-2001 à 16:23:51
si c'est le sujet de ton test, t'auras qu'à mettre un lien sur ce topic
omega2
Posté le 10-01-2001 à 00:22:15
kadreg a écrit a écrit :
find . -name * -print
Sinon, en shell ksh pur (pas sur de la syntaxe, j'ai pas de
shell correct sous la main, mais l'idée y est
Le fichier s'appelle dirrec.sh, il prend un paramètre, le répertoire ou commencer (utiliser . pour le rep courant).
for i in $1 do
if [ -d $i ]
dirrec.sh $i
else
echo $1/$i
fi
done
En pur shell, c'est plutot :
for i in $1 do
if ( test -d $i )
ssdirrec.sh $i
else
ssecho $1/$i
fi
done
Faire un -d directment est une extention qui n'est géré par tout les shell.
Toxin
Carpe ★★ Vitam
Posté le 10-01-2001 à 12:02:33
Pasque du ksh c'est pas du pur shell pour toi ???????
mets #!/bin/ksh en première ligne et basta, ça marche dans tous les cas.
omega2
Posté le 10-01-2001 à 14:19:12
Le fait de mettre le ksh en premiére ligne ne marche que si le ksh est installé. :-(
Par contre, c'est vrai que le ksh est un pur shell ( je m'étais mal exprimé). Je voulais, simplement faire remarqué qu'avec certain shell ça pourrait ne pas marcher.
Toxin
Carpe ★★ Vitam
Posté le 10-01-2001 à 17:51:43
ksh pas installé ? Faut vraiment être vicieux lors que l'install de la station UNIX
Toxin
Carpe ★★ Vitam
Posté le 10-01-2001 à 17:52:59
Je dirais même plus, je n'ai encore jamais vu un seul script dans le milieu professionel a être écrit en autre chose que du ksh.
omega2
Posté le 10-01-2001 à 18:08:37
Dans le milieu professionnel, je n'ai pas encore vu de script shell (programmation dans une boite qui travaille qu'avec win). Mais à l'IUT, on faisait du shell Bash (bien que je me demande si en ksh ça aurait pas aussi bien marché.
Toxin
Carpe ★★ Vitam
Posté le 11-01-2001 à 11:27:52
bash c'est pas du Linux only ????
Mais je crois que ces deux interpréteurs sont bien compatibles, syntaxiquement parlant.
Ben moi du script shell, j'en bouffe un max depuis quelques mois et j'avoue que ça m'a fait du bien.
kadreg
profil: Utilisateur
Posté le 11-01-2001 à 12:21:03
Bah non, bash a été porté sous n'impote quoi. AU taf, je l'utilise sous Solaris, à la maison sous linux, au taf sous Windows NT, je l'ai utilisé sous BeOS.
Et disons que bash est compatible ksh (un shell écrit pour ksh fonctionnera sous bash), l'inverse, en revanche
moontek
Posté le 13-01-2001 à 13:44:57
Tu crées un script ou un prog ou simplement une ligne de commande
car ce que tussveux peut etre relativement résumé dans unssscriptss style
# ici le path de tonssshell bash oussKSH oussceluissque tu veux !ss #puis simplementss ls $1 -r > resultat.txt
$1 la variable etant le repssque tussdésires donc unssexemple concret :
scrupt /home/etc/ <enter>
va te donner unssfichier resultat.txt avec unssls recursif inscrit dedans