2009-04-21 91 views
28

我正在制作.bat文件,并且我希望它将ASCII art写入文本文件中。将新行添加到MS-DOS中的文本文件中

当我回显文本时,我能够找到命令追加一个新行到文件,但是当我阅读该文本文件时,我看到的只是一个布局符号而不是空间。我认为它可以通过用Word打开该文件或甚至​​,但我希望它可以在任何计算机上工作,即使该计算机只有Notepad(大部分情况下)。

如何打开某个程序(即写字板)中的文本文件或向该文件写入适当的空格字符?


编辑:

我发现它是用最好的方式:

echo <line1> > <filename> 
echo <line2> >> <filename> 

附:我在我的ASCII艺术中使用|,所以它坠毁,哑喑哑:)

+1

恐怕这个问题需要严格的重新配置和一些输入/输出/代码示例。你已经失去了大约半程... – Tomalak 2009-04-21 17:10:41

+1

哇,你无处不在。很难理解你在问什么。尽量在尽可能少的几行中提出明确的问题。另外,包含你正在做的事情的样本会有所帮助。 – Will 2009-04-21 17:10:59

+1

“当写入到txt文件时,我刚刚看到一个布局标志而不是空间”,这让我很伤脑筋。 Ty! – Will 2009-04-21 17:12:00

回答

57
echo Hello, > file.txt 
echo.  >>file.txt 
echo world >>file.txt 

,你总是可以运行:在任何版本的Windows

wordpad file.txt 


在Windows 2000及以上的,你可以这样做:

(echo Hello, & echo. & echo world) > file.txt 

显示文本的少量信息的另一种方法是创建一个包含file.vbs:

Msgbox "Hello," & vbCrLf & vbCrLf & "world", 0, "Message" 

给它打电话

cscript /nologo file.vbs 

或使用wscript如果您不需要等到它们单击确定。


与你写邮件的问题是,竖线(|)是"pipe" operator。您需要使用^|而不是|来避开它。

P.S.拼写为Pwned

+0

Ty! 我没有意识到这增加了一条线! 真棒:) – billyy 2009-04-21 17:12:10

+0

是的,我注意到,我可以做到这一点,但即时通讯试图保持它紧凑,你看,只是创建该文件,否则它只会复制它:) 但是没有办法做到这一点,只使用写1次现在在吗? – billyy 2009-04-21 17:14:43

9

通过使用重定向字符两次(>>),您可以轻松追加到文件末尾。


这将复制source.txtdestination.txt,在这个过程中覆盖目标:

type source.txt > destination.txt 

这将复制source.txtdestination.txt,追加到目的地的过程中:

type source.txt >> destination.txt 
8

也许这你想要什么?

echo foo > test.txt 
echo. >> test.txt 
echo bar >> test.txt 

导致的test.txt中的以下:

酒吧

1
echo "text to echo" > file.txt 
0
  • 我总是用copy con写文,它很容易写一个长的t分机
  • 实施例:

    C:\ COPY CON [驱动器:] [路径] [文件名]

    ....内容

    F6

    1文件( s)被复制

-1

使用以下内容:

echo (text here) >> (name here).txt 

Ex。 echo my name is jeff >> test.txt

的test.txt

my name is jeff 

您可以在脚本中使用它。

相关问题