![]() |
Bonjour et bienvenu par les États-Unis à la UNIX et Linux Forums! Merci de votre visite et vous joindre à notre communauté mondiale.
|
|
google unix.com
|
|||||||
| Forums | S'inscrire | Forum Rules | Liens | Albums | FAQ | Liste des membres | Calendrier | Recherche | Aujourd'hui, les postes | Marquer les forums comme lus |
| UNIX pour les nuls Questions et réponses Si vous ne savez pas où poster un UNIX ou Linux question, post it here. Tous les systèmes UNIX et Linux, débutants bienvenus! |
Plus d'UNIX et Linux Forum Sujets Vous trouverez peut-être utile
|
||||
| Fil | Thread Starter | Forum | Réponses | Last Post |
| problème dans awk int () la fonction | qa.bingo | De programmation et de script Shell | 2 | 01-02-2009 09:52 AM |
| Recursion | joshighanshyam | High Level Programming | 5 | 12-03-2008 12:15 PM |
| Aide Aide à la recursion | Murtaza | De programmation et de script Shell | 6 | 03-29-2007 11:26 AM |
| Problème avec la récursivité dans les sous-répertoires | scotty_123 | De programmation et de script Shell | 5 | 03-11-2007 05:51 AM |
| recursion | gsjf | De programmation et de script Shell | 1 | 08-26-2002 01:22 AM |
![]() |
|
|
LinkBack | Thread Tools | Recherche sur ce Thread | Rate Thread | Modes d'affichage |
|
|
|
||||
|
Fonction Shift Recursion Problème
Salut, Je tente de créer un script qui affichera le contenu des répertoires des utilisateurs, mais je suis confus sur la façon d'intégrer le passage correctement.
Le problème, je suis avec mon script, c'est qu'il va pensé que le premier couple de répertoires, mais renvoie une erreur car il perd alors le premier répertoire de continuer la recherche à d'autres répertoires (je l'espère, qui a du sens!) EDIT: Je présente mes excuses, c'est le vieux problème, maintenant le problème est le chemin de la recherche ajoute les mauvais répertoires pour qu'il cherche dans les chemins qui n'existent pas Voici mon code, toute aide serait grandement appréciée. Code:
direc=~
list=$(ls -l $direc | egrep '^d' | cut -d" " -f8)
function printList() {
for line in $*
do
echo $line
list=$(ls -l $direc/$1 | egrep '^d' | cut -d" " -f8)
direc=$direc/$1
shift
printList $list
done
}
printList $list
Code:
list=$(ls -l $direc/$1 | egrep '^d' | cut -d" " -f8 2>/dev/null) Code:
list=$(ls -l $direc/$1 | egrep '^d' | cut -d" " -f8) 2>/dev/null ![]() Dernière édition par nuvpal; au 03.12.2009 06:22 AM.. |
|
||||
|
Citation:
Fondamentalement, ce que je veux que mon script à faire est d'afficher une représentation visuelle du répertoire spécifié et tous ses sous-répertoires (comme l'arbre de commande). J'ai réussi à supprimer l'original ls erreur en ajoutant le 2> / dev / null à l'appel de la fonction elle-même, qui semble fonctionner ok maintenant: Code:
#!/bin/bash
direc=~
seperator=....
list=$(ls -l $direc | egrep '^d' | cut -d" " -f8)
function printList() {
for line in $*
do
echo $line
list=$(ls -l $direc/$1 | egrep '^d' | cut -d" " -f8 )
direc=$direc/$1
shift
printList $list 2>/dev/null
done
}
printList $list 2>/dev/null
la sortie sera donné quelque chose comme: (où l'. nombre et représentent les répertoires et sous répertoires) direc1 direc1.1 direc1.1.1 direc1.1.2 direc1.2 direc1.2.1 direc2 et puis il s'arrête alors que je veux à l'affichage d'une sortie du type: direc1 direc1.1 direc1.1.1 direc1.1.2 direc1.2 direc1.2.1 direc2 direc2.1 direc2.1.1 direc2.2 direc2.2.1 direc3 direc3.1 direc3.1.1 direc3.2 direc4 ... etc Dernière édition par nuvpal; au 03.12.2009 08:26 AM.. |
|
||||
|
Citation:
Code:
tree ~ J'espère que c'est clair. Et j'apprécie beaucoup votre aide et votre temps. ![]() |
|
||||
|
Citation:
direc1 serait le répertoire parent, direc1.1 direction et 1.2 serait direc1 de sous-répertoires, et direc1.1.1 serait un sous-répertoire du répertoire direc1.1 i hope thats un peu plus clair ![]() |
![]() |
| Bookmarks |
| Thread Tools | Recherche sur ce Thread |
| Modes d'affichage | Rate this thread |
|
|