Ich bin ein Neuling für Linux. Ich habe über Katzenbefehl gelernt, als ich das versuchte.Pipelining der Befehle cat und ls
[email protected]:~$ cat file
Videos/Arrow/Season*
[email protected]:~$ cat file | ls -l
Der Befehl zeigt den Inhalt des aktuellen Ordners anstelle des Ordners in der Datei erwähnt .. Aber wenn ich das richtig
[email protected]:~$ cat file
Videos/Arrow/Season*
[email protected]:~$ ls -l $(cat file)
Der Inhalt der erwarteten Ordner angezeigt
tat. Warum kann ich die Pipeline in diesem Fall nicht benutzen?
Sie können Text nicht in 'ls' für die Verwendung als Dateinamen" pipe ". ls akzeptiert keine Eingaben auf diese Weise. Sie müssten Xargs, z. 'Katzendatei | xargs ls -l'. xargs nimmt Daten von stdin und übergibt sie als Befehlszeilenargumente an den angegebenen Befehl ('ls -l'). –