Líbí se mi příkaz watch
, ale má jeho omezení .
Jsem zvědavý, jestli bych mohl napodobit funkčnost watch
s less
. Hledám hlavně schopnost procházet můj adresář, protože se dynamicky mění pomocí běžícího skriptu.
Do pole less
můžete zadat F
, aby se pokračovalo ve čtení na konci souboru (například tail -f
); můžete napsat :e
a název souboru pro zobrazení jiného souboru, ale bohužel, pokud zadáte název aktuálního souboru, less
soubor znovu nenačte. Existuje však trik, díky kterému je možné znovu přečíst aktuální soubor, navrhl sabgenton : typ :e
a zadejte název neexistujícího souboru ; To způsobí, že se zobrazí chybová zpráva a znovu načte aktuální soubor.
Pokud hledáte alternativu k watch ls
, zde je několik:
auto-revert-mode
, načte soubor nebo adresář každých 5 sekund (zpoždění je konfigurovatelné).R
znovu načtěte (místní) URL.Shift+F učiní less
podobným tailf
. To znamená, že se obnoví, pokud je do souboru připojeno více dat.
Jednoduše napište:
less +F filename
To emuluje stisknutí „F“ v editoru.
man
stránky mohou být velmi informativní. Nenechte se nimi zastrašit. Ze všeho ostatního, man less
říká, že můžete použít příkaz R
k:
R Repaint the screen, discarding any buffered input. Useful if the file is changing while it is being viewed.
(Uvědomuji si, že tato otázka je starší než 6 let, ale objevuje se ve vyhledávání Google, takže nejsem jediný, kdo klikl na odkaz, abych se sem dostal.)
Klávesa „F“ při spuštění less
provede „následování“ podobné tail -f
, ale nejsem si jistý, zda to dosáhne toho, co hledáte.
Normálně jen píšu G jednorázově snížit výstup. Považuji to za zvláště užitečné v síťovém systému souborů, jako je CIFS.
R
pro překreslení ne vždy načte soubor znovu.[1]
Řešením, které vždy znovu načte soubor, je stisknout hq
, čímž se otevře stránka nápovědy, a pak ukončete. To má vedlejší účinek nutit soubor znovu načíst.
[1] Zde je několik příkladů situací, které R
dělají a nenabíjejí:
>
a >>
změny: Znovu načístsed -i
, gEdit, TextEdit: NENÍ znovu načtenvi
mění: DO se znovu načtouvi
změní: NENÍ znovu načtenoVěřím, že rozdíl přijde na to, zda se změní inode (můžete zkontrolovat pomocí ls -i foo.txt
). Pokud se inode změní, R
nebude fungovat.
K přečtení souboru můžete použít vim a poté přidat následující mapování do svého .vimrc
a můžete soubor snadno načíst pomocí ,r:
let mapleader = ","
nnoremap <leader>r :edit <CR>
Pokud jste již soubor upravili, vim si stěžuje. Stačí změnit na
let mapleader = ","
nnoremap <leader>r :edit! <CR>
Ignorovat změny.
Dalo by se to dát do tail -f
místo toho by to vedlo k tomu, že sledujete výstup. Ztratili byste však schopnost pohybovat se (procházet) vaším výstupem.
Právě jsem našel toto vlákno jako kdokoli jiný. Chtěl bych přidat řešení, když už jste na konci souboru, použití 'g' následované 'G' vynutí obnovení souboru.
Nakonec jsem pro to vytvořil tlačítko makra v mém terminálovém programu (SecureCRT). Makro je jednoduše 'gG'.
Pokud se vám nelíbí používání prohlížeče, můžete spustit webový server Algernon pomocí tohoto příkazu:
algernon -a -t /directory/name
Seznam souborů se poté zobrazí a automaticky obnoví na http: // localhost: 3000 /