Tôi đang viết một tập tin batch mà tôi cần xuất ra một chuỗi chứa '!' sang một tệp khác. Nhưng khi tôi lặp lại chuỗi đó với một tệp khác, nó sẽ xóa "!" từ đầu ra.Sự khác biệt giữa biến% biến% và! trong tập tin thực thi
Ví dụ: Input:
set LINE=Hi this is! output
echo !LINE!>>new_file.txt
Output trong new_file.txt là:
Hi this is output
Ngoài ra, nếu đầu vào là
set LINE=Hello!! this is output!!
echo !LINE!>>new_file.txt
Output trong new_file.txt:
Hello
Do đó, nó bỏ qua! (Dấu chấm than) từ đầu ra đến new_file. Nếu tôi sử dụng% LINE%, thì nó chỉ hiển thị "echo is on" thành tệp đầu ra.
Vui lòng đề xuất cách khắc phục sự cố này.
Khi 'echo% ĐƯỜNG DÂY%' đầu ra 'echo là on' thì bạn phải ở trong một khối. Bạn nên thêm một chút mã của mình – jeb
Câu hỏi này rất gây hiểu lầm, bạn không muốn biết sự khác biệt, bạn muốn biết cách thoát khỏi nó ... –