Чтобы избежать потенциальных проблем со специальными символами в строке, которую вы ищете, может быть лучше просто вызвать findstr напрямую следующим образом:
type input.txt | findstr /b /e /v "remove_line" > input_without_remove_line.txt
/ b и / e вместе будут совпадать только если "remove_line "- единственный текст в строке./ v переключит вывод для вывода только тех строк, которые не совпадают.
Если вы уверены, что не пропускаете специальные символы, это довольно легко обернуть в небольшой пакет и заменить строку удаления на% 1 или% * для использования переданных вами параметров.
К сожалению, вам нужно будет использовать временный файл - замена файла на месте не будет работать с перенаправлением вывода DOS.
ЕслиВы хотели удалить все вхождения указанного слова в любой строке, вероятно, batch и findstr не подходят для этого.Посмотрите на sed, который может сделать гораздо больше и находится в свободном доступе.Если вы не можете установить другую утилиту, даже vbscript с использованием cscript будет лучшим способом сделать это, чем пакетная обработка.