Użytkownicy Uniksa mogą mieć swoje prawdziwe nazwiska wymienione w /etc/passwd/. The finger polecenie może wyświetlać prawdziwe nazwy. Mogą ls -l pokaż te prawdziwe nazwy właścicieli plików obok plików?
Jeśli ls nie można tego zrobić bezpośrednio, to jaki jest najlepszy sposób na potokowanie danych wyjściowych ls -l przez finger aby osiągnąć ten wynik? Brzmi jak praca awk - posługiwać się ls -l | finger jako tabela przeglądowa do zastąpienia trzeciej kolumny ls -l.
(Podobne pytanie w przypadku, gdy nie ma prawdziwych nazw finger ale w tabeli przeglądowej: Wymiana tekstu w tabeli wyszukiwania w bashu )
finger (I może ls może uzyskać dostęp do tych informacji). W drugim pytaniu prawdziwe nazwy znajdują się w pliku, ale nie w finger.
ls? Nie powinieneś tego próbować: ls -l | awk 'BEGIN{lc=0; while((getline line<"/etc/passwd") >0){split(line,p,":"); map[p[1]]=p[5]; lc++}} {$3=map[$3]}1' Zakładam, że trzecia kolumna twojego ls -l polecenie zawiera użytkownika.