2011-08-29 36 views

Trả lời

56

Sử dụng (ECHO 2)>>file.txt. Chí đầu ra này 2 không có khoảng cách.

+0

+1 OH MY GOSH thật tuyệt vời! Tôi hoàn toàn không nghĩ về điều đó. :) – Mehrdad

+0

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

+1

Bạn biết đấy, tôi nghĩ tôi sẽ hỏi đó như một câu hỏi riêng. :) – Mehrdad

-5

Có không gian trước khi >>.

echo 2 >> file.txt

+9

Đó (rõ ràng) vang một không gian thêm tôi không muốn. – Mehrdad

+0

Thực ra nó không thêm bất kỳ khoảng trống nào - chỉ là một dòng mới có thể dễ dàng tránh được với 'echo -n'. –

+1

@Chaitanya: Bạn có chắc đây là một tập tin ** batch ** không? – Mehrdad

-7

Làm thế nào về điều này?

echo 2 >>file.txt 
+3

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

+0

Có tôi đã làm - xem bình luận của tôi về nó. –

+0

'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. –

32

echo ^2>>file.txt xuất hiện để làm việc cho tôi.

+0

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

+0

@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

+0

@Pacerier Bạn có chắc chắn rằng nó là một yêu cầu của OP? – SteveFest

27

Sử dụng ^ thoát:

Echo ^2>> file.txt 
+0

Btw logic đằng sau điều này là gì? – Pacerier

+1

@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. –

8
echo.2>>text.txt 

Có, đó là lạ.

+2

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

+0

@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

+0

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

289

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 
+17

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

7

phương pháp khác

echo>>file.txt 2 
+0

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

+0

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

4

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 
+0

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

+0

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

0

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.

-1

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

1

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"

+0

Đ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

Các vấn đề liên quan