nmake - 如何强制echo命令输出制表符?

时间:2009-04-28 17:31:39

标签: echo nmake control-characters

如何强制echo命令在MS nmake makefile中输出制表符? 在echo命令被nmake删除后,verbatim选项卡直接插入到字符串中,并且不会显示在输出文件中。

all :
    @echo I WANT TO OUTPUT THE <TAB> CHARACTER HERE! > output.txt

6 个答案:

答案 0 :(得分:4)

您可以将变量与 TAB char一起使用。将这些行放在.bat文件中:

设置tab = [从键盘中设置TAB字符]
回显%tab%b&gt; yourfile.txt

这样做,yourfile.txt将包含文本 [TAB] b

答案 1 :(得分:0)

作为一种变通方法,您可以创建一个包含制表符字符的文件,名为input.txt(不使用nmake),然后说:

all :
    @copy /b input.txt output.txt

答案 2 :(得分:0)

我假设您已经尝试将标签放在引号内?

all:
    @echo "<TAB>" > output.txt

答案 3 :(得分:0)

output.txt:
    <<output.txt
I WANT TO OUTPUT THE <TAB> CHARACTER HERE!
<<KEEP

<TAB>当然代表了一个文字制表符。

答案 4 :(得分:0)

DOS和Windows在本机批处理文件中具有难看的文本支持:)。

这是完成任务的好方法:

  1. 安装Python解释器
  2. 编写简单脚本,将带有指定代码的字符追加到文件
  3. 在任何地方调用脚本:)
  4. 简单的脚本:

    '''
    append_char.py - appends character with specified code to end of file
    
    Usage:  append_char.py  filename charcode
    
    '''
    import os
    import sys
    
    filename = sys.argv[1]
    assert os.path.exists(filename)
    
    charcode = int(sys.argv[2])
    assert 0 <= charcode <= 255
    
    fh = open(filename, 'ab')
    fh.seek(0, os.SEEK_END)
    fh.write(chr(charcode))
    
    fh.close()
    

    使用批处理文件中的此脚本,您可以在Universe中创建任何可能的文件:)

答案 5 :(得分:0)

我有同样的需要。我使用了字符周围的引号作为答案,然后又向前走了一步。

{tab}表示在文本编辑器中按下键盘的Tab键。

SET tab =“ {tab}”

SET选项卡=%tab:〜1,1%

第二行从加引号的字符串中提取中间字符。

现在您可以将%tab%变量与ECHO一起使用,我怀疑,在其他任何需要的地方。

ECHO%tab%此文本缩进,并带有一个制表符。

我怀疑这种技术也可以与其他问题字符一起使用。