¿Encontrar el personaje en la fila?

¿Encontrar el personaje en la fila?

Estoy tratando de encontrar algún carácter en el archivo usando find o findstr, por ejemplo, contenidos de archivos como:

"/test/abctest/abci.txt = c:\abctest\tst\work\workt.txt;a B C_test1"
"/test/abctest/abci.txt = c:\abctest\tst\work\workt.txt;a B C.test2"
"/test/abctest/abci.txt = c:\abctest\tst\work\workt.txt;(a B C)test3"
"/test/abctest/abci.txt = c:\abctest\tst\work\workt.txt;a B C_prueba4"

... así sucesivamente...
Quiero encontrar en el archivo el último "abc" (parte en negrita).
Este archivo es muy grande, por lo que no quiero utilizar ningún bucle "for" para encontrar un carácter.
¿Podría sugerirme alguna solución?

Respuesta1

Si está dispuesto a instalar un paquete de herramientas Unix, como Cygwin, puede usar el comando tac (opuesto a "cat"): leerá/mostrará el archivo al revés. Luego puedes canalizar eso a findtr (o grep) para obtener la última cadena coincidente del archivo. Algunas versiones de tail admiten el modificador -r, que también invierte el orden de las líneas en el archivo.

Si esto no está claro, déjame un comentario y te lo explicaré.

ACTUALIZACIÓN: Las herramientas de Unix están disponibles para usar en Windows, si instala una de estas:cygwin,unxutiles,coreutils. Siga esos enlaces para instalar uno u otro y luego tendrá lo que necesita. Para su información, CygWin parece ser el más popular y es el que uso.

información relacionada