GARUDASEB Posté(e) le 26 juillet 2022 Partager Posté(e) le 26 juillet 2022 Bonjour, J'essaye de faire une liste des dossiers/fichiers sur un dossier precis vers un fichier .txt. Après bcp de recherche cela ne marche pas. Le code le plus simple que j'ai trouvé c'est cela : ls -Rl /volume1/BABA/* > /volume1/BABA/liste.txt mm ce code, ne fonctionne pas QQn aurait une idée? Bonne journée 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
ml78 Posté(e) le 26 juillet 2022 Partager Posté(e) le 26 juillet 2022 Que donne : ls -Rl /volume1/BABA/ 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Einsteinium Posté(e) le 26 juillet 2022 Partager Posté(e) le 26 juillet 2022 Effectivement le * ne sert à rien… 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
GARUDASEB Posté(e) le 26 juillet 2022 Auteur Partager Posté(e) le 26 juillet 2022 Tjrs en erreur J'ai essayé cela ls -Rl /volume1/BABA/ > liste.TXT Je reçoit ce message d'erreur par mail ------------------------------------------------------------------- Tâche : LISTE 2 Heure de début : Tue, 26 Jul 2022 17:05:52 GMT Heure d'arrêt : Tue, 26 Jul 2022 17:05:59 GMT État actuel : 0 (Normal) Sortie/erreur standard : ------------------------------------------------------------ 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
ml78 Posté(e) le 26 juillet 2022 Partager Posté(e) le 26 juillet 2022 Il y a 5 heures, GARUDASEB a dit : Tjrs en erreur J'ai essayé cela ls -Rl /volume1/BABA/ > liste.TXT Je reçoit ce message d'erreur par mail ------------------------------------------------------------------- Tâche : LISTE 2 Heure de début : Tue, 26 Jul 2022 17:05:52 GMT Heure d'arrêt : Tue, 26 Jul 2022 17:05:59 GMT État actuel : 0 (Normal) Sortie/erreur standard : ------------------------------------------------------------ Visiblement, ça n'est pas exécuté en mode console. Comment est-ce exécuté ? 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
GARUDASEB Posté(e) le 26 juillet 2022 Auteur Partager Posté(e) le 26 juillet 2022 Bien vu.!!! J'ai oublié de préciser, mes excuses, que je veux faire ce script en mode "tâches planifiées" Désolé de l'oubli. Je suppose que cela change tout ? Bonne soirée 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Einsteinium Posté(e) le 26 juillet 2022 Partager Posté(e) le 26 juillet 2022 Tu as choisis qui en utilisateur pour exécuter cette commande ? ^^’ 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
GARUDASEB Posté(e) le 27 juillet 2022 Auteur Partager Posté(e) le 27 juillet 2022 (modifié) Hello Que je sois avec "Mon User" ou en "Admin" ou en "Root" cela ne fait pas de différence Modifié le 27 juillet 2022 par GARUDASEB 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
PiwiLAbruti Posté(e) le 27 juillet 2022 Partager Posté(e) le 27 juillet 2022 (modifié) La tâche est bien exécutée. Par contre il faudrait définir un chemin de solution absolu pour le fichier de sortie, sinon il est probablement créé dans le dossier home de l'utilisateur. Modifié le 27 juillet 2022 par PiwiLAbruti Put@!# de correcteur automatique 🤬 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
GARUDASEB Posté(e) le 27 juillet 2022 Auteur Partager Posté(e) le 27 juillet 2022 effectivement cela marche avec ls -Rl /volume1/A-TRAITER/ >/volume1/A-TRAITER/liste.txt Par contre, le format de sortie n'est pas Top : Je voudrais que cela ressemble (pour pouvoir le retraiter après) à cela pour chaque fichier : /volume1/A-TRAITER/Fichier1.avi /volume1/A-TRAITER/Fichier1.doc ........ Je suppose qu'il faut rajouter des arguments au début Merci pour votre aide !!! 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
MilesTEG1 Posté(e) le 27 juillet 2022 Partager Posté(e) le 27 juillet 2022 Essaye ceci : ls -rt -d -1 "$PWD"/{*,.*} > toto.list ça liste les fichiers cachés aussi. Si tu ne les veux pas, fait ça : ls -d $PWD/* > toto.list Résultats obtenus après une recherche simple : https://duckduckgo.com/?q=bash+ls+with+full+path&kp=1&ia=web 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
PiwiLAbruti Posté(e) le 27 juillet 2022 Partager Posté(e) le 27 juillet 2022 user@DiskStation:~$ ls -lrt -d -1 "$PWD"/{*,.*} | awk '{print $9}' 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Einsteinium Posté(e) le 27 juillet 2022 Partager Posté(e) le 27 juillet 2022 Il y a 6 heures, PiwiLAbruti a dit : La tâche est bien exécutée. Par contre il faudrait définir un chemin de solution absolu pour le fichier de sortie, sinon il est probablement créé dans le dossier home de l'utilisateur. Moi je suis resté sur sa ligne du premier post, c'était correct hormis le jocker Sinon pour la liste simple, suffit de faire un simple ls -R et pas ls -Rl 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
PiwiLAbruti Posté(e) le 27 juillet 2022 Partager Posté(e) le 27 juillet 2022 il y a 14 minutes, Einsteinium a dit : Sinon pour la liste simple, suffit de faire un simple ls -R et pas ls -Rl Ça ne donne pas le résultat demandé : Il y a 5 heures, GARUDASEB a dit : Par contre, le format de sortie n'est pas Top : Je voudrais que cela ressemble (pour pouvoir le retraiter après) à cela pour chaque fichier : /volume1/A-TRAITER/Fichier1.avi /volume1/A-TRAITER/Fichier1.doc D'où la commande que j'ai donnée un peu plus haut. 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
GARUDASEB Posté(e) le 28 juillet 2022 Auteur Partager Posté(e) le 28 juillet 2022 hello pour la commande user@DiskStation:~$ ls -lrt -d -1 "$PWD"/{*,.*} | awk '{print $9}' /volume1/A-TRAITER/ >/volume1/A-TRAITER/liste.txt Je reçois le message d'erreur : ------------------------------------------- Le planificateur de tâches a terminé une tâche planifiée. Tâche : LISTE 2 A-TRAITER Heure de début : Thu, 28 Jul 2022 07:50:32 GMT Heure d'arrêt : Thu, 28 Jul 2022 07:50:32 GMT État actuel : 0 (Normal) Sortie/erreur standard : /bin/bash: user@DiskStation:~$: command not found awk: warning: command line argument `/volume1/A-TRAITER/' is a directory: skipped -------------------------------------------------------------------- 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
MilesTEG1 Posté(e) le 28 juillet 2022 Partager Posté(e) le 28 juillet 2022 @GARUDASEBessaye une des commandes que j’ai posté. Ça devrait fonctionner. 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
GARUDASEB Posté(e) le 28 juillet 2022 Auteur Partager Posté(e) le 28 juillet 2022 (modifié) En effet cela marche pas mal avec : ls -rt -d -1 "$PWD"/{*,.*} /volume1/A-TRAITER/* >/volume1/A-TRAITER/liste.txt J'ai pu tester sur un autre dossier. mais cela ne remonte pas les sous-dossiers j'ai l'impression Comment changer la profondeur de recherche ? Modifié le 28 juillet 2022 par GARUDASEB 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
MilesTEG1 Posté(e) le 28 juillet 2022 Partager Posté(e) le 28 juillet 2022 Ça ne faisait pas parti du cahier des charges 😅 Essaye en mettant R dans les paramètres ls -rtR -d -1 "$PWD"/{*,.*} /volume1/A-TRAITER/* >/volume1/A-TRAITER/liste.txt 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
PiwiLAbruti Posté(e) le 28 juillet 2022 Partager Posté(e) le 28 juillet 2022 Il y a 1 heure, GARUDASEB a dit : Je reçois le message d'erreur user@DiskStation:~$ ls -lrt -d -1 "$PWD"/{*,.*} /volume1/A-TRAITER/ | awk '{print $9}' >/volume1/A-TRAITER/liste.txt 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
GARUDASEB Posté(e) le 28 juillet 2022 Auteur Partager Posté(e) le 28 juillet 2022 Rebonjour à tous les deux @MilesTEG1 pas mieux avec : ls -rtR -d -1 "$PWD"/{*,.*} /volume1/A-TRAITER/* >/volume1/A-TRAITER/liste.txt Je n'ai pas les sous-dossiers @PiwiLAbruti user@DiskStation:~$ ls -lrt -d -1 "$PWD"/{*,.*} /volume1/A-TRAITER/ | awk '{print $9}' >/volume1/A-TRAITER/liste.txt Me renvoie : Tâche : LISTE 2 A-TRAITER Heure de début : Thu, 28 Jul 2022 09:30:55 GMT Heure d'arrêt : Thu, 28 Jul 2022 09:30:55 GMT État actuel : 0 (Normal) Sortie/erreur standard : /bin/bash: user@DiskStation:~$: command not found 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
PiwiLAbruti Posté(e) le 28 juillet 2022 Partager Posté(e) le 28 juillet 2022 il y a 4 minutes, GARUDASEB a dit : Me renvoie : Tâche : LISTE 2 A-TRAITER Heure de début : Thu, 28 Jul 2022 09:30:55 GMT Heure d'arrêt : Thu, 28 Jul 2022 09:30:55 GMT État actuel : 0 (Normal) Sortie/erreur standard : /bin/bash: user@DiskStation:~$: command not found Aucune idée, cette commande fonctionne chez moi. Par contre je n'ai pas trouvé le moyen de parcourir récursivement les dossiers. -R semble inopérant lorsque -d est utilisé. En fait il ne faut pas utiliser la commande ls, mais find : find /volume1/A-TRAITER/* > /volume1/A-TRAITER/liste.txt 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
GARUDASEB Posté(e) le 28 juillet 2022 Auteur Partager Posté(e) le 28 juillet 2022 (modifié) en effet c'est parfait avec FIND !!! find /volume1/A-TRAITER/* > /volume1/A-TRAITER/liste.txt un grand merci à vous Bonne journée Modifié le 28 juillet 2022 par GARUDASEB 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
MilesTEG1 Posté(e) le 28 juillet 2022 Partager Posté(e) le 28 juillet 2022 Fait gaffe si tu veux utiliser le liste.txt avec un autre script, il va contenir aussi les noms des dossiers : /volume1/A-TRAITER/fichier1.toto /volume1/A-TRAITER/dossier /volume1/A-TRAITER/dossier/fichier2.toto 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
GARUDASEB Posté(e) le 28 juillet 2022 Auteur Partager Posté(e) le 28 juillet 2022 Oui effectivement, du coup je mets nom de fichier "ListeA-TRAITER.txt" Par contre je m'appercois quand je fouille un dossier racine avec un espace du type "BABA BOBO", le script ne fonctionne pas mais cela fonctione si le nom est "BABA-BOBO" il y a comme une rupture dans le script..... 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
MilesTEG1 Posté(e) le 28 juillet 2022 Partager Posté(e) le 28 juillet 2022 Colle le code de ton script ou partage un lien GitHub qu'on voit ce qu'il fait et comment ne pas traiter les dossiers 🙂 C'est en bash ? Si c'est du bash, tu peux faire le teste de si l'élément est un fichier : if [ -f $FILE ] then fi Ou si c'est un dossier : if [ -d $FILE ] then fi 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés
Rejoindre la conversation
Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.