Разница между% переменная% и! Переменная! в пакетном файле

Я пишу командный файл, где мне нужно вывести строку, содержащую '!' в другой файл. Но когда я передаю эту строку в другой файл, она удаляет "!" с выхода.

Например: вход:

set LINE=Hi this is! output
echo !LINE!>>new_file.txt

Вывод в new_file.txt:

Hi this is output

Кроме того, если вход

set LINE=Hello!! this is output!!
echo !LINE!>>new_file.txt

Вывод в new_file.txt:

Hello

Следовательно, он пропускает! (Восклицательный знак) из вывода в новый_файл. Если я использую% LINE%, то он просто отображает "эхо включено в выходной файл.

Пожалуйста, предложите способ преодоления этой проблемы.

Ответы на вопрос(2)

Ваш ответ на вопрос