Puede usar la sustitución de comandos:
vim $(find -name somefile.txt)
o
find -name somefile.txt -exec vim {} \;
Prueba esto:
- iniciar vim
- en vim, use lo siguiente:
:r!find /<path> -name 'expression'
Los resultados deberían aparecer en vim cuando se complete la búsqueda.
O
Prueba:
find /<path> -name > results.txt
vim results.txt
Si no le importa volver a ejecutar el comando:presione Arriba y agrega un xargs
dominio. O use la sustitución de historial y ejecute
!! | xargs vim # won't work with file names containing \'" or whitespace
!! | xargs -d \\n vim # GNU only (Linux, Cygwin)
Hay una forma ligera de guardar la salida de un comando que funciona en ksh y zsh pero no en bash (requiere que el lado de salida de una canalización se ejecute en el shell principal). Canalice el comando en la función K
(definición de zsh a continuación), que k Guarda su salida en la variable $K
.
function K {
K=("${(@f)$(tee /dev/fd/3)}") 3>&1;
}
find … |K
vim $K
No es posible guardar automáticamente la salida de cada comando solo con el shell, debe ejecutar el comando en un terminal emulado. Puedes hacerlo ejecutando dentro de script
(una utilidad BSD, pero disponible en la mayoría de los Unice, incluidos Linux y Solaris), que guarda todos los resultados de su sesión a través de un archivo (todavía se necesita un poco de esfuerzo para detectar de manera confiable el último mensaje en el texto mecanografiado).