Terminal - find - redirection - debutant

Fermé
luna - 29 févr. 2008 à 11:36
 luna - 29 févr. 2008 à 18:18
Bonjour,
j'ai un exo que je n'arrive pas à faire, je suis débutante, ça va surement vous paraitre très simple.

"trouver par man une option de la commande find qui permet de trouver les fichier d'un type donné"
bon,ça, c'est facile, c'est : find -type x
(x=f,d,l,p,c,b,s)

"n'oubliez pas de redirectionner les messages d'erreurs de find sur /dev/null, sans quoi le resultat sera illisible"
???
j'ai pas de message d'erreurs, moi!
pour rediriger, il faut faire {find -type x} > /dev/null
en ayant créé /dev/null, non?

quand je teste sans redirection, j'obtiens ça :
sophie@ordi-sophie:~$ find -type d
.
./Public
./.fontconfig
./.mozilla
./.mozilla/firefox
./.mozilla/firefox/32f57a2z.default
./.mozilla/firefox/32f57a2z.default/Cache
./.mozilla/firefox/32f57a2z.default/bookmarkbackups
./.mozilla/firefox/32f57a2z.default/extensions
./.mozilla/firefox/32f57a2z.default/chrome
./.gnome
./.gnome/gnome-vfs
./.themes
./.tsclient
./Bureau
./.config
./.config/tracker
./.gconf
./.gconf/desktop
./.gconf/desktop/gnome
./.gconf/desktop/gnome/accessibility
./.gconf/desktop/gnome/accessibility/keyboard
./.gconf/desktop/gnome/font_rendering
./.gconf/desktop/gnome/applications
./.gconf/desktop/gnome/applications/window_manager
./.gconf/desktop/gnome/background
./.gconf/apps
./.gconf/apps/totem
./.gconf/apps/totem/plugins
./.gconf/apps/totem/plugins/media_player_keys
./.gconf/apps/totem/plugins/skipto
./.gconf/apps/totem/plugins/screensaver
./.gconf/apps/totem/plugins/movie-properties
./.gconf/apps/mahjongg
./.gconf/apps/gnome-app-install
./.gconf/apps/gnome-app-install/state
./.gconf/apps/eog
./.gconf/apps/eog/ui
./.gconf/apps/file-roller
./.gconf/apps/file-roller/general
./.gconf/apps/file-roller/listing
./.gconf/apps/gnobots2
./.gconf/apps/gnobots2/geometry
./.gconf/apps/gnobots2/preferences
./.gconf/apps/panel
./.gconf/apps/panel/general
./.gconf/apps/panel/applets
./.gconf/apps/panel/applets/trashapplet_screen0
./.gconf/apps/panel/applets/fast_user_switch_screen0
./.gconf/apps/panel/applets/fast_user_switch_screen0/prefs
./.gconf/apps/panel/applets/show_desktop_button_screen0
./.gconf/apps/panel/applets/mixer_screen0
./.gconf/apps/panel/applets/notification_area_screen0
./.gconf/apps/panel/applets/clock_screen0
./.gconf/apps/panel/applets/clock_screen0/prefs
./.gconf/apps/panel/applets/clock_screen0/prefs/timezones
./.gconf/apps/panel/applets/window_list_screen0
./.gconf/apps/panel/applets/window_list_screen0/prefs
./.gconf/apps/panel/applets/workspace_switcher_screen0
./.gconf/apps/panel/applets/workspace_switcher_screen0/prefs
./.gconf/apps/panel/applets/deskbar_screen0
./.gconf/apps/panel/toplevels
./.gconf/apps/panel/toplevels/top_panel_screen0
./.gconf/apps/panel/toplevels/top_panel_screen0/background
./.gconf/apps/panel/toplevels/bottom_panel_screen0
./.gconf/apps/panel/toplevels/bottom_panel_screen0/background
./.gconf/apps/panel/objects
./.gconf/apps/panel/objects/session_dialog_screen0
./.gconf/apps/panel/objects/menu_bar_screen0
./.gconf/apps/panel/objects/email_launcher_screen0
./.gconf/apps/panel/objects/browser_launcher_screen0
./.gconf/apps/panel/objects/yelp_launcher_screen0
./.gconf/apps/gtali
./.gconf/apps/gnome-sudoku
./.gconf/apps/gnect
./.gconf/apps/nautilus
./.gconf/apps/nautilus/preferences
./.gconf/apps/gnomine
./.gconf/apps/gnomine/geometry
./.gconf/apps/iagno
./.gconf/apps/gnome-screensaver
./.gconf/apps/aisleriot
./.gconf/apps/glines
./.gconf/apps/glines/preferences
./.gconf/apps/metacity
./.gconf/apps/metacity/general
./.gconf/apps/evolution
./.gconf/apps/evolution/calendar
./.gconf/apps/evolution/calendar/notify
./.gconf/apps/gnotravex
./.gconf/apps/deskbar
./.gconf/apps/gnotski
./.gconf/apps/gnotski/level_info
./.gconf/apps/gnotski/level_info/11D4FFF6
./.gconf/apps/gnotski/level_info/81789155
./.gconf/apps/gnotski/level_info/CD55C171
./.gconf/apps/gedit-2
./.gconf/apps/gedit-2/preferences
./.gconf/apps/gedit-2/preferences/ui
./.gconf/apps/gedit-2/preferences/ui/statusbar
./.gconf/apps/gnome-power-manager
./.gconf/apps/gnome-power-manager/notify
./.gconf/apps/gnibbles
./.gconf/apps/gnibbles/preferences
./.gconf/apps/gnibbles/preferences/worm
./.gconf/apps/gnibbles/preferences/worm/0
./.gconf/apps/gnibbles/preferences/worm/1
./.gconf/apps/gnibbles/preferences/worm/3
./.gconf/apps/gnibbles/preferences/worm/4
./.gconf/apps/gnibbles/preferences/worm/2
./.gconf/apps/gnibbles/preferences/worm/5
./.gconf/system
./.gconf/system/networking
./.gconf/system/networking/wireless
./.gconf/system/networking/wireless/networks
./.gconf/system/networking/wireless/networks/Livebox-faa9
./.gstreamer-0.10
./.Trash
./Images
./.openoffice.org2
./.openoffice.org2/user
./.openoffice.org2/user/gallery
./.openoffice.org2/user/temp
./.openoffice.org2/user/autocorr
./.openoffice.org2/user/psprint
./.openoffice.org2/user/psprint/fontmetric
./.openoffice.org2/user/psprint/driver
./.openoffice.org2/user/store
./.openoffice.org2/user/Scripts
./.openoffice.org2/user/basic
./.openoffice.org2/user/basic/Standard
./.openoffice.org2/user/config
./.openoffice.org2/user/config/soffice.cfg
./.openoffice.org2/user/config/soffice.cfg/modules
./.openoffice.org2/user/config/soffice.cfg/modules/scalc
./.openoffice.org2/user/config/soffice.cfg/modules/scalc/images
./.openoffice.org2/user/config/soffice.cfg/modules/scalc/images/Bitmaps
./.openoffice.org2/user/config/soffice.cfg/modules/scalc/menubar
./.openoffice.org2/user/config/soffice.cfg/modules/scalc/toolbar
./.openoffice.org2/user/config/soffice.cfg/modules/scalc/accelerator
./.openoffice.org2/user/config/soffice.cfg/modules/scalc/accelerator/en-US
./.openoffice.org2/user/config/soffice.cfg/modules/scalc/statusbar
./.openoffice.org2/user/config/soffice.cfg/modules/dbapp
./.openoffice.org2/user/config/soffice.cfg/modules/dbapp/images
./.openoffice.org2/user/config/soffice.cfg/modules/dbapp/images/Bitmaps
./.openoffice.org2/user/config/soffice.cfg/modules/dbapp/menubar
./.openoffice.org2/user/config/soffice.cfg/modules/dbapp/toolbar
./.openoffice.org2/user/config/soffice.cfg/modules/dbapp/statusbar
./.openoffice.org2/user/config/soffice.cfg/modules/swriter
./.openoffice.org2/user/config/soffice.cfg/modules/swriter/images
./.openoffice.org2/user/config/soffice.cfg/modules/swriter/images/Bitmaps
./.openoffice.org2/user/config/soffice.cfg/modules/swriter/menubar
./.openoffice.org2/user/config/soffice.cfg/modules/swriter/toolbar
./.openoffice.org2/user/config/soffice.cfg/modules/swriter/statusbar
./.openoffice.org2/user/config/soffice.cfg/global
./.openoffice.org2/user/config/soffice.cfg/global/accelerator
./.openoffice.org2/user/config/soffice.cfg/global/accelerator/en-US
./.openoffice.org2/user/config/imagecache
./.openoffice.org2/user/database
./.openoffice.org2/user/database/biblio
./.openoffice.org2/user/uno_packages
./.openoffice.org2/user/uno_packages/cache
./.openoffice.org2/user/uno_packages/cache/uno_packages
./.openoffice.org2/user/uno_packages/cache/registry
./.openoffice.org2/user/uno_packages/cache/registry/com.sun.star.comp.deployment.sfwk.PackageRegistryBackend
./.openoffice.org2/user/uno_packages/cache/registry/com.sun.star.comp.deployment.configuration.PackageRegistryBackend
./.openoffice.org2/user/uno_packages/cache/registry/com.sun.star.comp.deployment.configuration.PackageRegistryBackend/registry
./.openoffice.org2/user/uno_packages/cache/registry/com.sun.star.comp.deployment.component.PackageRegistryBackend
./.openoffice.org2/user/uno_packages/cache/registry/com.sun.star.comp.deployment.script.PackageRegistryBackend
./.openoffice.org2/user/autotext
./.openoffice.org2/user/wordbook
./.openoffice.org2/user/template
./.openoffice.org2/user/registry
./.openoffice.org2/user/registry/data
./.openoffice.org2/user/registry/data/org
./.openoffice.org2/user/registry/data/org/openoffice
./.openoffice.org2/user/registry/data/org/openoffice/Office
./.openoffice.org2/user/registry/cache
./.openoffice.org2/user/backup
./.metacity
./.metacity/sessions
./.cache
./.cache/tracker
./Musique
./Vidéos
./.gconfd
./.thumbnails
./.thumbnails/normal
./.thumbnails/fail
./.thumbnails/fail/gnome-thumbnail-factory
./.local
./.local/share
./.local/share/tracker
./.local/share/tracker/data
./.icons
./Modèles
./.gnome2
./.gnome2/deskbar-applet
./.gnome2/deskbar-applet/modules-2.20-compatible
./.gnome2/accels
./.gnome2/eog
./.gnome2/file-roller
./.gnome2/keyrings
./.gnome2/share
./.gnome2/share/fonts
./.gnome2/share/cursor-fonts
./.gnome2/Totem
./.gnome2/panel2.d
./.gnome2/panel2.d/default
./.gnome2/panel2.d/default/launchers
./.gnome2/nautilus-scripts
./.gnome2/evince
./.gnome2/gnome-power-manager
./.nautilus
./.nautilus/metafiles
./.gnome2_private
./.update-notifier
./Documents
sophie@ordi-sophie:~$ find -type l
./.openoffice.org2/user/config/modern_en-US_en-ZA.sog
./.openoffice.org2/user/config/arrowhd_en-US_en-ZA.soe
./.openoffice.org2/user/config/classic_en-US_en-ZA.sog
./.openoffice.org2/user/config/styles_en-GB.sod
./.openoffice.org2/user/config/modern_en-GB.sog
./.openoffice.org2/user/config/arrowhd_en-GB.soe
./.openoffice.org2/user/config/palette_en-US_en-ZA.soc
./.openoffice.org2/user/config/hatching_en-US_en-ZA.soh
./.openoffice.org2/user/config/classic_en-GB.sog
./.openoffice.org2/user/config/hatching_en-GB.soh
./.openoffice.org2/user/config/styles_en-US_en-ZA.sod
./.openoffice.org2/user/config/palette_en-GB.soc
./Examples
sophie@ordi-sophie:~$ find -type p
sophie@ordi-sophie:~$ find -type c
sophie@ordi-sophie:~$ find -type b
sophie@ordi-sophie:~$


"Trouver un exemplaire de chaque fichier dans la machine"
Manifestement, ce n'est pas le cas. La recherche est pourtant effectuée dans tout l'ordi non?

"Lancer ls -l sur ces fichier et remarquez les différences"
Comment fait-on? ils faut que les fichiers soient au même endroit non? ça me parait pourtant bizarre de changer de place des fichiers.

9 réponses

bonjour,

la redirection c'est pas plutôt : ">>"

la commande "find type -p" : n'est pas indiqué ou il faut chercher ...


bip ! bip !
1
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897
29 févr. 2008 à 11:55
Salut,
[tmpfs]$ find /home/ -type f -name "plop"
find: /home/jp/tmp/orbit-root: Permission non accordée
/home/jp/Documents/scripts/momsse/plop
find: /home/yogi/tmp: Permission non accordée
find: /home/yogi/.kde: Permission non accordée
find: /home/yogi/.ssh: Permission non accordée
find: /home/yogi/.gnome2_private: Permission non accordée
find: /home/yogi/.gconfd: Permission non accordée
find: /home/yogi/.gnome2: Permission non accordée
find: /home/yogi/Desktop: Permission non accordée
find: /home/yogi/.gconf: Permission non accordée
find: /home/yogi/.local: Permission non accordée
find: /home/yogi/.macromedia: Permission non accordée

[tmpfs]$ find /home/ -type f -name "plop" 2>/dev/null

/home/jp/Documents/scripts/momsse/plop

[tmpfs]$    
;-))
1
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 567
29 févr. 2008 à 11:56
Salut,

find / -type x -exec ls -l {} \; 2>/dev/null
le résultat sera sûrement long donc mieux vaut envoyer le résultat dans un fichier et ensuite regarder le fichier
find / -type x -exec ls -l {} \; > resultat.ls  2>/dev/null


à remplacer x avec le type adéquat
1
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897
29 févr. 2008 à 12:01
"Trouver un exemplaire de chaque fichier dans la machine"
Manifestement, ce n'est pas le cas. La recherche est pourtant effectuée dans tout l'ordi non?

Non, elle est effectuée depuis le répertoire d'où tu lances la commande (le tien).
Pour une recherche sur tout l'ordi, tu dois spécifier la racine :
find / -type.....
;-))
1

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ok, merci, pour votre aide, ça marche.

par contre, j'ai regardé dans l'aide et je ne comprends pas trop ce que fais -exec.
Et que viens faire \ ici :
find / -type x -exec ls -l {} \; 2>/dev/null

(pour la redirection, c'est evidemment 2>/dev/null, j'avais betement oublié le 2.)

Merci beaucoup
1
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897
29 févr. 2008 à 16:16
je ne comprends pas trop ce que fais -exec
Il sert à exécuter la commande qui le suit pour chaque argument trouvé par la commande "find".

Extrait du man find :
   ACTIONS
       -exec commande ;
              Exécute la commande ; vrai si le code de retour 0  est  renvoyé.
              Tous  les  arguments  suivants de find sont considérés comme des
              arguments pour la ligne de commande, jusqu'à ce qu'on  rencontre
              un  `;'.  La  chaîne `{}' est remplacée par le nom du fichier en
              cours de traitement, et ceci dans toutes  ses  occurrences,  pas
              seulement  aux  endroits  où elle est isolée, comme c'est le cas
              avec d'autres versions de find.  Ces deux chaînes peuvent  avoir
              besoin d'être protégées du développement de la ligne de commande
              par le shell, en utilisant le caractère d'échappement  (`\')  ou
              une  protection  par  des  apostrophes. La commande est exécutée
              depuis le répertoire de départ.
Et que viens faire \ ici :
Il sert à protéger le caractère ";" (partie intégrante de la commande "-exec") du shell, afin qu'il ne soit pas interprété par le shell justement.

;-))
1
ah oui! je le savais normallement pour \ !

Par contre moi j'ai l'aide en anglais, pas en français... ya moyen d'avoir les 2?

Merci
1
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897
29 févr. 2008 à 17:49
Suffit d'installer les pages de man-fr ;-))
1
Oui, évidemment!

Merci beaucoup pour ton aide
1