Sto rimuovendo le parole di arresto da un testo, usando approssimativamente questo codice
Ho il seguente
$ cat file
file
types
extensions
$ cat stopwords
i
file
types
grep -vwFf stopwords file
Mi aspetto il risultato:
extensions
ma ottengo il (penso errato)
file
extensions
È come se la parola filefosse stata ignorata nel file stopwords. Ora ecco il po 'fredda: se modifico il file stopwords, cambiando la parola / lettera isulla prima linea, a qualsiasi altra lettera ascii a parte f, i, l, e, poi lo stesso comando grep mi dà un risultato diverso e corretto extensions.
Cosa sta succedendo qui e come posso risolverlo?
Sto usando grep (BSD grep) 2.5.1-FreeBSD su un Mac OSX GNU bash, versione 4.4.12 (1)
imodello il secondo anziché il primo modello nel stopwordsfile altera anche il comportamento.
grepné con GNU grep3.1.
-xopzione per la riga regex invece che-wper la parola? Tuttavia, penso che l'-Finterruttore annullerà uno di essi, o viceversa.