Chciałbym wyświetlić zawartość pliku tekstowego w linii poleceń. Plik zawiera tylko 5-6 znaków. Czy istnieje łatwy sposób na zrobienie tego?
Odpowiedz
 Używając cat 
 Ponieważ twój plik jest krótki, możesz użyć  cat . 
cat filename 
 Używanie less 
 Jeśli musisz przeglądać zawartość dłuższego pliku, możesz użyć pagera takie jak  less . 
less filename 
 Możesz sprawić, aby less zachowywał się jak cat po wywołaniu dla małych plików i zachowywał się normalnie, przekazując mu -F i -X flagi. 
less -FX filename 
 Mam alias dla less -FX. Możesz zrobić taki sam: 
alias aliasname="less -FX" 
Jeśli dodasz alias do swojej konfiguracji powłoki , możesz go używać wiecznie.
 Używając od 
 Jeśli twój plik zawiera dziwne lub niedrukowalne znaki, możesz użyć  od , aby sprawdzić znaki. Na przykład 
$ cat file (ÐZ4 ?o=÷jï $ od -c test 0000000 202 233 ( 320 K j 357 024 J 017 h Z 4 240 ? o 0000020 = 367 \n 0000023 
Komentarze
Odpowiedz
 Mimo że wszyscy używają cat filename do wydrukowania tekstu pliku na standardowe wyjście, pierwszym celem jest con  kot  enating. Ze strony podręcznika cat: 
cat – łączy pliki i drukuje na standardowym wyjściu
Teraz cat jest odpowiedni do drukowania plików, ale są alternatywy:
 echo "$(<filename)" or printf "%s" "$(<filename)" 
 ( ) return wartość wyrażenia, w tym przypadku zawartość  nazwa_pliku , która jest następnie rozwijana przez $ dla echo lub printf. 
Aktualizacja:
< filename 
Robi dokładnie to, co chcesz i jest łatwe do zapamiętania.
Oto przykład, który pozwala wybrać plik z menu, a następnie go wydrukować.
#!/bin/bash select fname in *; do # Don"t forget the "" around the second part, else newlines won"t be printed printf "%s" "$(<$fname)" break done 
 Więcej czytanie: 
  BashPitfalls – plik cat | sed s / foo / bar /> plik  
  Bash Reference – Przekierowanie  
Komentarze
-  Twoja aktualizacja: ” 
< filenameto dokładnie wh jeśli chcesz, … ” wprowadza w błąd. Ogólnie rzecz biorąc, chociaż jest to interesująca dyskusja na temat alternatyw, myślę, żecatjest prostsza. -  Nagie 
< filenamenie wyświetlić zawartość pliku, alecat filenametak. -  Możesz też użyć 
tee < filename. -  +1 za bashizm 
echo "$(<filename)". Nie dość tego tutaj. -  To ' świetny pomysł na użycie wewnętrznego polecenia Linuksa z echo 
"$(<filename)". Dzięki … 
Odpowiedź
Narzędzia do obsługi plików tekstowych w systemie UNIX to podstawowe, codzienne polecenia:
W systemach UNIX i Linux, aby wydrukować całą zawartość w pliku
cat filename.txt 
lub
more filename.txt 
lub
less filename.txt 
Kilka ostatnich wierszy
tail filename.txt 
Dla kilka pierwszych wierszy
head filename.txt 
Odpowiedź
Do wyświetlenia treści możesz użyć następującego polecenia pliku tekstowego.
cat filename
Komentarze
-  Więcej informacji na temat 
cat, uruchomman cat. 
Odpowiedz
 Jedną z opcji jest użycie more 
 np.more file.txt 
 Jednak nie ma wszystkich funkcji dodanych przez less. 
 Prostym przykładem jest to, że nie można przewijać danych wyjściowych w górę. Generalnie zostało zastąpione przez mniej – które zostało nazwane żartobliwie, ponieważ 
mniej znaczy więcej
Komentarze
- Ładne wyjaśnienie, dlaczego nazwa była mniejsza
 
Odpowiedź
 Zawsze używam $ less "your file here", ponieważ jest to bardzo proste, zapewnia wbudowaną interaktywną grep i zapewnia łatwy w użyciu interfejs, który można przewijać za pomocą klawiszy strzałek. 
(Jest również dostępny w prawie każdym systemie * nix)
Komentarze
-  
lessto przesadna wersjamore(porównajman lesszman more) i dla mnie ma dwie irytujące funkcje: 1) przełącza się na alternatywny bufor ekranu, gdy less się kończy, plik który właśnie przeglądałeś znika 2) w EOF musisz jawnie wpisaćq(wiem, że ' jest odpowiednią opcją). Dlatego jedną z moich pierwszych czynności w nowym środowisku jest ustawienieexport PAGER=/bin/morew moim profilu i używaniemoreprzez cały czas. -  @ ott–: 1) Wypróbuj flagę 
-X. 2) Wypróbuj flagę-E.lessma tryb emulacjimore. Możesz ją włączyć, ustawiając zmienną środowiskowąLESS_IS_MORE. Wmoretrybie emulacji można przewijać w górę. - Zobacz też: unix.stackexchange.com/questions / 81129 / …
 -  Chociaż ogólnie zgadzam się, że 
lessjest przesadnie skomplikowane. Jego zdolność do uruchamiania poleceń zewnętrznych jest doskonałym przykładem jego nadmiernej złożoności. -  @EvanTeitelman I ' Zawsze uważałem, że funkcja grep jest niezwykle użyteczna, @ott – Uważam, że z tego powodu ' emulacja 
morei ' ma wiele dodatkowych funkcji, bardzo dobrze spełnia swoje zadanie. 
Odpowiedź
Jeśli jest to duży plik i chcesz przeszukać jakąś konkretną część, możesz użyć
 cat filename | grep text_to_search -ni 
Możesz także użyć bardziej interaktywnego edytora Vima (lub edytora vi, jeśli nie masz Vima):
 vim filename Or vi filename
Vim / vi to świetny edytor, może być również używany jako czytnik w „Trybie Normalnym” lub używając opcji -R, ma wiele funkcji, które pomoże ci w przeglądaniu pliku.
Komentarze
-  Krótsze dla 
vim -Rtoview. Pamiętaj jednak, że nie lubi przekierowań, o czym mowa w xargs i vi – „Dane wejściowe nie pochodzą z terminala” . - dzięki @manatwork for the heads up! Niedawno zacząłem używać Vima i podoba mi się ze względu na kilka jego funkcji. Jeśli chodzi o przekierowania, zapomniałem o tym, dzięki za przypomnienie. W tej chwili pracuję na zdalnej maszynie wirtualnej, gdzie używam ssh bez interfejsu GUI, dlatego Vim jest bardzo przydatny, gdy żaden inny edytor GUI nie może działać, ' s dlaczego podkreśliłem tutaj Vima.
 
Odpowiedź
Użyj polecenia cat, aby wyświetlić zawartość nazwy pliku. cat nazwa_pliku
Użyj polecenia vim do edycji pliku. nazwa pliku vim
sed -n l filemoże być przydatne.lessma jakieś wyraźne zalety w porównaniu z innymi programami do obsługi stronicowania, takimi jakpg, czy sprowadza się to po prostu do osobistych preferencji?lessma więcej funkcje niżpg. Przyjrzyj sięless(1)ipg(1)podręczników. Istnieją również inne pagery. Spójrz na unix.stackexchange.com/questions/81129/… .lessto prawdopodobnie najczęściej używany pager, ale którego używasz, sprowadza się do osobistych preferencji.moreimost!