J'ai étudié la ligne de commande et appris que |(pipeline) est censé rediriger la sortie d'une commande vers l'entrée d'une autre. Alors, pourquoi la commande ls | filene fonctionne pas?
file l’entrée est l’un des noms de fichiers suivants, comme file filename1 filename2
lsla sortie est une liste de répertoires et de fichiers sur un dossier, donc je pensais ls | fileétait censé montrer le type de fichier de chaque fichier d'un dossier.
Quand je l'utilise cependant, la sortie est:
Usage: file [-bcEhikLlNnprsvz0] [--apple] [--mime-encoding] [--mime-type]
[-e testname] [-F separator] [-f namefile] [-m magicfiles] file ...
file -C [-m magicfiles]
file [--help]
Comme il y avait une erreur avec l'utilisation de la filecommande
file *est le moyen le plus intelligent, je me demandais simplement pourquoi l’utilisation de la lssortie ne fonctionnait pas. Le doute est
ls est généralement une mauvaise idée.
ls, cela signifie que vous voulez que tous les fichiers du répertoire en cours soient gérés avec lafilecommande. ... Alors pourquoi ne pas simplement faire:,file *qui répondra avec une ligne pour chaque fichier, dossier.