Nmake - Как заставить команду Echo вывести символ вкладки?

StackOverflow https://stackoverflow.com/questions/799047

  •  18-09-2019
  •  | 
  •  

Вопрос

Как заставить команду Echo вывести символ вкладки в MS Nmake Makefile? Вкладки Vorbatim, вставленные прямо в строку после того, как команда Echo удаляется Nmake и не отображаются в выходном файле.

all :
    @echo I WANT TO OUTPUT THE <TAB> CHARACTER HERE! > output.txt
Это было полезно?

Решение

Вы можете использовать переменную с Вкладка девчонка Поместите эти строки в свой файл .bat:

Установить вкладка =Вкладка «Стало» из вашей клавиатуры
Echo a%tab%b> yourfile.txt

Это, у yourfile.txt будет текстTABбеременный

Другие советы

В качестве обходного пути вы можете создать файл, содержащий символ TAB, с именем input.txt (не используя nmake), а затем сказать:

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

Я предполагаю, что вы уже пытались поместить вкладку в цитаты?

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

DOS и Windows имеют некрасивую текстовую поддержку в собственных пакетных файлах :).

Вот хороший способ выполнить свою задачу:

  1. Установите интерпретатор Python
  2. Напишите простой скрипт, который добавляет символ с указанным кодом для файла
  3. Позвоните в скрипт, где бы вы ни хотите :)

Простой сценарий:

'''
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()

Используя этот скрипт из пакетного файла, вы можете создать любой возможный файл во вселенной :)

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

<TAB> Конечно, представляет собой буквальный символ вкладки.

У меня была такая же потребность. Я использовал ответ, используя цитаты вокруг персонажа и просто сделал его на шаг вперед.

{Tab} означает нажатие клавиши вкладки клавиатуры в текстовом редакторе.

Set tab = "{вкладка}"

Установить вкладку =%вкладка: ~ 1,1%

Вторая строка извлекает средний символ из цитируемой строки.

Теперь вы можете использовать переменную % вкладок % с помощью Echo, и, я подозреваю, где бы то ни было.

Echo %Tab %Этот текст отступает, которому предшествует вкладка.

Я подозреваю, что эта техника также может быть использована и с другими проблемами.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top