Uczyłem się o linii poleceń i dowiedziałem się, że |(potok) ma przekierowywać dane wyjściowe z polecenia do wejścia innego. Dlaczego więc to polecenie ls | filenie działa?
file input jest jedną z wielu nazw plików, takich jak file filename1 filename2
lswyjście to lista katalogów i plików w folderze, więc pomyślałem, że ls | filepowinien pokazać typ pliku każdego pliku w folderze.
Jednak gdy go używam, dane wyjściowe są następujące:
Usage: file [-bcEhikLlNnprsvz0] [--apple] [--mime-encoding] [--mime-type]
[-e testname] [-F separator] [-f namefile] [-m magicfiles] file ...
file -C [-m magicfiles]
file [--help]
Ponieważ wystąpił błąd podczas używania filepolecenia
file *to najmądrzejszy sposób, po prostu zastanawiałem się, dlaczego użycie lswyjścia nie działa. Wątpliwości wyjaśnione :)
ls jest generalnie złym pomysłem.
ls, oznacza to, że chcesz, aby wszystkie pliki w bieżącym katalogu były obsługiwane za pomocąfilepolecenia. ... Dlaczego więc nie po prostu zrobić:,file *który odpowie linią dla każdego pliku, folderu.