Si grep -nr sumthin *en mi directorio de código fuente, también arroja líneas muy largas de archivos JavaScript o CSS minificados. Quiero obtener solo los primeros 80 caracteres por línea.
Por ejemplo, un regular grepme da esto:
css/style.css:21: behavior: url("css/iepngfix.htc")
css/style-min.css:4:.arrow1{cursor:pointer;position:absolute;left:5px;bottom:10px;z-index:13;}.arrow2{cursor:pointer;position:absolute;right:5px;bottom:10px;z-index:13;}.calendarModule{z-index:100;}.calendarFooterContainer{height:25px;text-align:center;width:100%!important;z-index:15;position:relative;font-size:15px!important;padding:-2px 0 3px 0;clear:both!important;border-left:1px solid #CCC;border-right:1px ... etc.
pero me gustaría obtener esto en su lugar:
css/style.css:21: behavior: url("css/iepngfix.htc")
css/style-min.css:4:.arrow1{cursor:pointer;position:absolute;left:5px;bottom:
¿Qué comando de Linux puede hacer esto?
linux
command-line
bash
Nikki Erwin Ramirez
fuente
fuente

Respuestas:
Dios mío, me olvidé por completo
cut!^ hace el truco! > _ <
fuente
git log --oneline --graph --color=always | cut -c -$COLUMNS<file>:<linenumber>salida degrep -n).git log --oneline --graph --color=always | moremostrará el gráfico interrumpido por el texto envuelto. i.imgur.com/X8G7SIV.pngless -Ses lo que desea.-Ses--chop-long-lines. Básicamente, desactiva el ajuste de líneaAparte de lo
cutque puede usarfold(y en algunos casosfmt).foldEs parte delcoreutilspaquete.foldno corta el texto restante, pero lo muestra en la siguiente línea.fuente
file:linenumberprefijo de lagrepsalida es contiguo, para un fácil escaneo a simple vista.Si bien no es exactamente lo que desea hacer, puede usar
awkpara imprimir un cierto número de columnas. Puede especificar que el delimitador sea ":" en este caso.fuente