web-dev-qa-db-fra.com

Comment faire écho à un caractère de tabulation sur une invite de commande

Sur un fichier batch Windows, quelle est la bonne façon de faire écho à un TAB?

echo A<TAB>B<TAB>C

Je sais que je peux taper le TAB caractère entre les entrées, mais la plupart des éditeurs l’afficheront comme une séquence d’espaces. Certains vont même les convertir automatiquement en espaces, je cherche quelque chose de plus visuel.

Clarification:<TAB> signifie ici le véritable caractère de tabulation. Je cherche le C\t dans un script batch.

20
Haas

Il suffit de frapper le TAB touchez un éditeur qui le supporte, Notepad par exemple.

Donc, si j'entre ceci:

@echo 1<TAB>b
@echo 2<TAB>c

Il en résulterait ceci:

enter image description here

17
Tamara Wijsman

Une solution consiste à définir une variable d'environnement appelée TAB et à définir la valeur sur le caractère de tabulation réel. Vous devrez peut-être copier et coller le caractère de tabulation à partir d'un éditeur de texte pour le saisir correctement. J'ai essayé ceci dans Windows 7 et cela fonctionne.

Dans votre fichier de commandes, utilisez simplement% TAB% et il insérera un caractère de tabulation.

9
Timothy C. Quinn

De telles limitations sont parmi les raisons d'utiliser Windows Script Host ou Powershell.

Windows Script Host a été expédié (livré) avec toutes les versions de Windows à partir de 98 et peut être installé sur 95 et NT 4.

Créez un fichier appelé demo.vbs et collez la ligne suivante dans celui-ci et enregistrez-le.

WScript.StdOut.WriteLine "a" + chr(9) + "b"

Maintenant, dans le répertoire où vous l'avez enregistré, entrez:

demo.vbs

et vous devriez voir:

a       b

Vous pouvez aussi faire

cscript demo.vbs

qui vous permettra d’utiliser les options de ligne de commande fournies par cscript.

(Testé sur Vista.)

3
Dennis Williamson

Voici une solution à une ligne utilisant powershell dans un fichier de traitement par lots:

Powershell -noprofile -nologo -command Write-Output "a`tb`tc"

le `t est le caractère de tabulation

1
stangm

Tant que vous utilisez un éditeur qui conserve les onglets intacts, vous pouvez télécharger sed et le mettre sur votre chemin, puis faire quelque chose comme: :

echo "A`B`C" | sed 's/\t/<TAB>/g'

où chaque `correspond à un véritable onglet.


0
farfromhome