2012-06-27 41 views
9

Điều này nên là một đơn giản và tôi bất mãn với bản thân mình nhưng không thể cho cuộc sống của tôi tìm thấy một giải pháp! Tôi đang cố gắng viết số 1 vào một tập tin văn bản trong một kịch bản BAT. Nếu tôi làm như dưới đây nó hoạt động nhưng để lại một khoảng trống sau con số mà tôi không thể có. Tôi biết bạn có thể xóa dấu cách bằng cách xóa khoảng cách giữa 1 và> (điều này hoạt động với các chữ cái) nhưng với số lượng đột ngột tôi nhận được thông báo cho biết - ECHO đang TẮT.Viết số vào một tập tin văn bản - tập tin batch

ECHO 1 > mytextfile.txt 
*This works but leaves a trailing space* 

ECHO 1> mytextfile.txt 
*This gives me an error saying ECHO is OFF* 

Trả lời

14

Vấn đề là echo 1> myTextFile.txt sẽ không echo 1, thay vào đó là lệnh echo trống và chuyển hướng đi vào dòng 1.

Bạn chỉ có thể di chuyển các chuyển hướng tới phía trước.

>mytextfile.txt echo 1 
+1

Bây giờ đó là những gì tôi gọi là một tính năng ẩn. Tôi không bao giờ biết bạn có thể đặt nó vào phía trước là tốt. –

+0

Nó được phép đặt nó ở đâu đó trong dòng, ngay cả 'echo> mytextfile.txt 1' được cho phép (nhưng sau đó bạn nhận được một không gian hàng đầu) – jeb

+0

Điều này làm việc tuyệt vời, tốt để xem những người khác học từ sự thiếu kinh nghiệm của tôi với các tập tin Bat quá! Chúc mừng guys –

4

1> là lệnh đặc biệt. Sử dụng (ECHO 1) > mytextfile.txt để thay thế.

1

echo.1>mytextfile.txt cũng sẽ hoạt động.

+0

Nhưng đó chỉ là ** may mắn **! Nếu bạn cố gắng viết '3 2 1' theo cùng cách với' echo.3 2 1> mytextfile.txt', nó không thành công – jeb

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