Al mirar el contenido de los archivos, me gustaría cat
acortar automáticamente los archivos, pero less
aquellos que exceden el tamaño de la pantalla. Podría usar algo wc -l
, pero ¿hay una mejor manera que tal vez también considere el tamaño de la ventana / cantidad actual de líneas disponibles?
12
git log
que hace esto exactamente. Nunca sabes de antemano qué vas a obtener (¿tienes que golpearq
?).cat
para ver archivos. Por lo general, solo debe usarcat
para enviar el contenido de un archivo a stdout para que pueda canalizarse a otro proceso. La razón para evitar el usocat
para la visualización es que envía los bytes sin procesar al terminal, lo que puede provocar que se ejecuten comandos inesperados del terminal (por ejemplo, algunos usuarios se atascaron cuando un archivo contenía los bytes correctos para desactivar el teclado del terminal) . Por lo general, debe usar un buscapersonasless
o un editor, que formateará caracteres especiales para su visualización para que el terminal no los interprete.cat -v
para que escape caracteres especiales.cat
posible la pantalla dividida ? cuál podría ser una mejor solucióncat -v
hacia fueraRespuestas:
Para darle la fórmula que involucra la
wc
verificación basada en:Hay una
$LINES
variable de shell que también se puede usar:Pero
$LINES
se actualiza solo cuando está en el símbolo del sistema. Para entender lo que quiero decir, ejecute esto y cambie el tamaño de la ventana de terminal durante elsleep
:fuente
less
si, por ejemplo, 2/3 de la pantalla fueron utilizados porcat
.Tal vez 'less -F file_to_read' es la opción: sale menos si la ventana es suficiente para mostrar todo el archivo, y espera en el localizador si no es el caso
fuente
-X
opción detendrá el borrado, por lo que los archivos cortos se mostrarán como locat
hace. Desafortunadamente,-X
la pantalla no se borrará ni después de mostrar archivos largos y desplazados.cat
les llamara