Podoba mi się to watch
polecenie, ale ma swoje ograniczenia .
Jestem ciekaw, czy mogę naśladować funkcjonalność watch
z less
. Szukam przede wszystkim możliwości przewijania mojego katalogu, ponieważ jest on dynamicznie modyfikowany za pomocą działającego skryptu.
tail -f foo.log | grep bar
i mogę dynamicznie zmieniać polecenie grep po ponownym uruchomieniu potoku tail / grep.Odpowiedzi:
W
less
można wpisać,F
aby kontynuować czytanie na końcu pliku (np.tail -f
); możesz wpisać:e
i nazwę pliku, aby wyświetlić inny plik, ale niestety, jeśli wpiszesz nazwę bieżącego pliku, plikless
nie zostanie ponownie załadowany. Istnieje jednak sztuczka polegająca na ponownym odczytaniu bieżącego pliku, sugerowana przez sabgenton : wpisz:e
i wprowadź nazwę nieistniejącego pliku ; powoduje to, że less wyświetla komunikat o błędzie, a następnie ponownie ładuje bieżący plik.Jeśli szukasz alternatywy dla
watch ls
, oto kilka:auto-revert-mode
będzie ładować plik lub katalog co 5 sekund (opóźnienie można skonfigurować).R
aby ponownie załadować (lokalny) adres URL.źródło
less +F
ogląda tylko załączone treści. Służy:e nonexistentfile
do ponownego odczytu całkowicie zmienionego wejścia.R
niezawodnie odświeża plik. Odświeża ekran i usuwa niektóre bufory wejściowe, ale tak naprawdę nie przeładowuje danych z pliku w każdych okolicznościach (tylko jeśli plik jest duży? Nie zagłębiłem się głęboko w kod).Shift+Fuczyni
less
podobnym dotailf
. Oznacza to, że zostanie odświeżony, jeśli do pliku zostanie dołączonych więcej danych.źródło
less
nie pokażą tych zmian.$COMMAND | less
. Zastanawiam się, czy jest na to dobry sposób? Możesz robić takie rzeczy,$COMMAND > /tmp/file & less /tmp/file
ale to nie jest zbyt miłe.Po prostu wpisz:
To emuluje naciśnięcie „F” w edytorze.
źródło
alias check="less +F"
do mojego.bashrc
.man
strony mogą być bardzo pouczające. Nie zastraszaj ich. Między innymiman less
mówi , że możesz użyćR
polecenia, aby:(Zdaję sobie sprawę, że to pytanie ma ponad 6 lat, ale pojawia się przy wyszukiwaniu w Google, więc nie jestem jedynym, który kliknął link, aby się tutaj dostać).
źródło
less
nie otworzyłem ponownie pliku, używając jego nazwy pliku - tj. Gdy zmienił się i-węzeł pliku (jak w przypadku nadpisywania pliku za pomocąmv
), wówczas pozostała zawartość pliku (prawdopodobnie stary i-węzeł został ponownie odczytany) - - 2. Pierwszy wyświetlany wiersz prawdopodobnie zaczyna się od tego samego przesunięcia bajtu, co w oryginalnej treści pliku. Tak więc, gdy zmieniają się długości linii, pierwsza wyświetlana linia może być niekompletna, a wyświetlane linie mogą się przesuwać w górę / w dół.R
nie zawsze działa. Zobacz unix.stackexchange.com/questions/4351/…Klawisz „F” podczas uruchamiania
less
wykona „podążanie” podobnietail -f
, ale nie jestem pewien, czy osiągnie to, czego tu szukasz.źródło
Zwykle po prostu piszę, Gaby dopasować wynik jednorazowo. Uważam to za szczególnie pomocne w sieciowym systemie plików, takim jak CIFS.
źródło
man less
: „G lub> lub ESC-> Idź do wiersza N w pliku, domyślnie koniec pliku.” Usuwam tutaj moje stare błędne komentarze, przepraszam za nie.less
, Mark Nudelman, odpowiedział, co następuje: „Komenda G zazwyczaj nie wymusić ponowne odczytać z pliku jak polecenia R nie mogą wydawać się zrobić, że jeśli koniec pliku nie został jeszcze czytać, gdy G. jest wywoływany, tak że przeskakiwanie na koniec pliku musi po raz pierwszy odczytać tam dane. Na przykład, jeśli przeskoczysz do końca za pomocą G, następnie przejdziesz z powrotem do początku za pomocą 1G, a następnie inny program zmodyfikuje dane o koniec pliku (bez zmiany długości), ”(ciąg dalszy)Możesz użyć vima do odczytania pliku, a następnie dodać następujące mapowanie do swojego
.vimrc
pliku i możesz łatwo ponownie załadować plik za pomocą ,r:Uwaga: jeśli plik był już edytowany, vim będzie narzekał. Po prostu zmień na
Zignorować zmiany.
źródło
vim
twoje zimne, martwe ręce. Kontekst pytania dotyczyless
, ale jako osoba z tendencjami monomaniackimi sympatyzuję!R
bo odmalowanie nie zawsze przeładowuje plik. [1]Obejściem, które zawsze przeładowuje plik, jest naciśnięcie
hq
, co otworzy stronę pomocy, a następnie zamknięcie. Ma to efekt uboczny, zmuszając plik do ponownego załadowania.[1] Oto kilka przykładów sytuacji, które się
R
ładują i nie ładują ponownie:>
i>>
zmiany: Daj się ponownie załadowaćsed -i
, gEdit, TextEdit: NIE ładuj ponownievi
zmiany: ZOSTAŁY ponownie załadowanevi
zmiany: NIE ładuj ponownieUważam, że różnica sprowadza się do tego, czy zmienia się i-węzeł (można to sprawdzić za pomocą
ls -i foo.txt
). Jeśli i-węzeł się zmieni, toR
nie będzie działać.źródło
Możesz
tail -f
zamiast tego potokować, spowoduje to, że będziesz śledzić dane wyjściowe. Tracilibyście jednak możliwość poruszania się (przewijania) przez swoje wyjście.źródło
Jeśli nie masz nic przeciwko używaniu przeglądarki, możesz uruchomić serwer internetowy Algernon za pomocą tego polecenia:
Lista plików zostanie następnie wyświetlona i automatycznie odświeżona na stronie http: // localhost: 3000 /
źródło
less
Właśnie znalazłem ten wątek, jak każdy inny. Chciałbym dodać rozwiązanie, gdy jesteś już na końcu pliku, użycie „g”, a następnie „G” wymusi odświeżenie pliku.
W moim programie terminalowym (SecureCRT) skończyło się tworzenie przycisku makr. Makro to po prostu „gG”.
źródło