Làm cách nào để tôi lặp lại số vào một tệp, từ tập lệnh theo lô?Làm thế nào để echo "2" (không có dấu ngoặc kép) vào một tập tin, từ một tập lệnh batch?
này không hoạt động:
Echo 2>> file.txt
vì 2>>
là một lệnh đặc biệt. :(
Làm cách nào để tôi lặp lại số vào một tệp, từ tập lệnh theo lô?Làm thế nào để echo "2" (không có dấu ngoặc kép) vào một tập tin, từ một tập lệnh batch?
này không hoạt động:
Echo 2>> file.txt
vì 2>>
là một lệnh đặc biệt. :(
Sử dụng (ECHO 2)>>file.txt
. Chí đầu ra này 2
không có khoảng cách.
Có không gian trước khi >>
.
echo 2 >> file.txt
Làm thế nào về điều này?
echo 2 >>file.txt
Xem [câu trả lời này] (http://stackoverflow.com/questions/7225630/how-to-echo-2-no-quotes-to-a-file-from-a-batch-script/7225646#7225646) – Mehrdad
Có tôi đã làm - xem bình luận của tôi về nó. –
'echo' chỉ in các đối số được truyền cho nó - nếu chỉ có một đối số được truyền cho nó, không có khoảng trắng nào được in (nếu arg không chứa bất kỳ khoảng trắng nào). Nếu hai hoặc nhiều hơn args được thông qua, nó tách chúng với một char không gian duy nhất. –
echo ^2>>file.txt
xuất hiện để làm việc cho tôi.
Nhưng vẫn còn ** CRLF phía sau (cho chúng ta 3 byte). Làm thế nào có thể được dừng lại? – Pacerier
@Pacerier - xem [câu trả lời này] (https://stackoverflow.com/a/38589300/3923957) để biết cách lặp lại số 2 cho một tệp mà không có CRLF phía sau. – headinabook
@Pacerier Bạn có chắc chắn rằng nó là một yêu cầu của OP? – SteveFest
Sử dụng ^
thoát:
Echo ^2>> file.txt
Btw logic đằng sau điều này là gì? – Pacerier
@Pacerier - "2" trong ngữ cảnh này sẽ có ý nghĩa đặc biệt. Vì vậy,^ký tự thoát được sử dụng để điều trị "2" giống như một nhân vật bình thường. –
echo.2>>text.txt
Có, đó là lạ.
Thật kỳ lạ, và nó chỉ hoạt động nếu không có không gian/tab cũng không có bất kỳ ',; = ('. Cái này 'echo.hello (you2 >> text.txt' không thành công – jeb
@Kornel, Nhưng vẫn còn ** ** một CRLF phía sau (cho chúng tôi 3 byte). Làm thế nào có thể được dừng lại? – Pacerier
Câu trả lời tại liên kết này [ở đây] (https://stackoverflow.com/a/38589300/3923957) cho thấy làm thế nào để echo số 2 đến một tập tin mà không có CRLF phía sau – headinabook
Tính năng ít được biết: Toán tử chuyển hướng có thể đi bất cứ đâu trên đường.
>>file.txt echo 2
Bạn đã * nhận * để được đùa tôi !!!: O Điều này dường như giải quyết rất nhiều vấn đề! (+1) – Mehrdad
phương pháp khác
echo>>file.txt 2
Nhưng có ** vẫn còn ** một CRLF phía sau (cho chúng tôi 3 byte) Làm cách nào để dừng lại? – Pacerier
Câu trả lời tại [link] này (https: // stackoverflow).com/a/38589300/3923957) cho biết cách lặp lại số 2 đến tệp mà không có CRLF phía sau. – headinabook
Hoặc bạn có thể sử dụng việc mở rộng chậm
setlocal EnableDelayedExpansion
set "var=2"
echo(!var!>> file.txt
Nhưng vẫn còn ** CRLF phía sau (cho chúng ta 3 byte). Làm thế nào có thể được dừng lại? – Pacerier
Câu trả lời tại [link] này (https://stackoverflow.com/a/38589300/3923957) cho biết cách lặp lại số 2 đến tệp mà không có CRLF phía sau. – headinabook
Dựa trên this câu trả lời, nếu có ai đang tự hỏi làm thế nào để làm điều này:
echo "command1 && command2" > file.txt
không có qoutes i n file.txt
thì bạn làm như sau:
echo command1 ^&^& command2 > file.txt
Thử nghiệm trên Windows Server 2003.
thoát khỏi haracter '2'
trong linux: echo \2>file.txt
trong cửa sổ: echo ^2>file.txt
trong cửa sổ này cũng sẽ làm việc
echo.2>file.txt
không gian giữa tiếng vang và dấu chấm
Nếu bạn n eed một ghi chính xác, sử dụng lệnh này
(ECHO |set /p=2)>>file.txt
lệnh bằng DMan sẽ tạo ra một ngắt dòng 0x0D0A đằng sau "2"
Điều này sẽ đặt ERRORLEVEL thành 1. Nếu được ưu tiên đặt ERRORLEVEL thành 0, bạn có thể sử dụng một cái gì đó như '(echo | set/p dummyName =" 2 ")> file.txt' ([source] (https: // stackoverflow.com/a/11336754/3923957)). – headinabook
+1 OH MY GOSH thật tuyệt vời! Tôi hoàn toàn không nghĩ về điều đó. :) – Mehrdad
Trừ khi nó có dấu ngoặc đơn (phải không?). : P Bây giờ (đây là một câu hỏi riêng biệt, rõ ràng) làm thế nào để tôi echo một * tên tập tin tùy ý * vào một tập tin? Nó có thể có dấu ngoặc đơn, dấu ngoặc kép, số, v.v. – Mehrdad
Bạn biết đấy, tôi nghĩ tôi sẽ hỏi đó như một câu hỏi riêng. :) – Mehrdad