На всякий случай, если кто-то захочет сделать это для точного соответствия строк, вы можете использовать флаг -w
в grep - w для целого.То есть, например, если вы хотите удалить строки с номером 11, но оставить строки с номером 111:
-bash-4.1$ head file
1
11
111
-bash-4.1$ grep -v "11" file
1
-bash-4.1$ grep -w -v "11" file
1
111
Он также работает с флагом -f
, если вы хотите исключить несколько точныхшаблоны сразу.Если «черный список» - это файл с несколькими шаблонами в каждой строке, который вы хотите удалить из «файла»:
grep -w -v -f blacklist file