2010-12-15 71 views
0

Source: http: //jpsoft.com/help/index.htm alias.htmen utilisant des paramètres d'alias dans fenêtre d'invite

Alias ​​peuvent utiliser des paramètres de ligne de commande ou des paramètres tels que ceux fichiers batch . Les paramètres de ligne de commande sont numérotés de% 0 à % 511. (% 0 contient le nom d'alias.)

Par exemple, l'alias suivant répertoires de changement, effectuer une commande, et revenir au répertoire d'origine:

alias pushd %1 & %2$ & popd

quand je lance ce qui précède, mon invite de commande donne l'erreur en disant

% 1 * Impossible de lire la valeur d'alias * « % 2 » est pas reconnu comme une commande interne ou externe, programme exécutable ou un fichier de commandes. 'popd`' n'est pas reconnu comme une commande interne ou externe, un fichier exécutable ou un fichier séquentiel.

si vous utilisez guillemet à la place, alias dans "pushd% 1 & dir & popd" n'interprète pas le% 1 lorsque vous exécutez l'alias

C: \ abc \ def> alias dumping tous les alias définis pour CMD.EXE. in = pushd% 1 & dir & popd

alias

DEF wont work

--------- ------------ EDIT me laisser essayer un certain échantillon sortie avec un simple echo alias

D: \ abc \ def> alias /?

Utilisation: ALIAS [-v] [-p programName] [-f filespec] []

  [-v] means verbose output. 

     [-d] means delete aliases. 

     [-p programName] specifies which image file name these alias 

          definitions are for. Default is CMD.EXE 

     [-f filespec] specifies a file which contains the alises. 

C: \ Office \ dev15> alias out 'echo% 1'

% 1 '* Impossible de lire la valeur d'alias *

C: \ office \ dev15> alias echo% sur backtick 1 backtick

% 1` * Impossible de lire la valeur d'alias *

C: \ Office \ dev15> alias out "echo% 1"

C: \ Office alias \ dev15>

Dumping tous les alias définis pour CMD.EXE.

out    =echo %1 

C: \ Office \ dev15> sur abc

% 1

C: \ Office \ dev15> alias sur echo% 1

% 1 * Impossible de valeur lue d'alias *

C: \ office \ dev15> sur abc

ECHO est activé.

Le problème est, à la fois seule citation et tick retour produit une erreur, tout en guillemet traiter wont% 1 paramètre variable également essayé avec aucune des citations. encore wouldnot travailler

Répondre

1

Ok, essayez cette (copie d'usage et coller):

alias dtxt = `pushd %1 & dir %2$ & popd` 

Ceci définit l'alias 'dtxt' aux commandes suivantes:

pushd %1 
    dir %2 
    popd 

Pay particulier attention aux guillemets simples inversés (`) autour de la définition d'alias. Cela se trouve sur la touche en haut à gauche des claviers ISO (UK) et ANSI (US).

Vous devez fournir deux paramètres, % 1 et % 2 lors de l'exécution dtxt - un chemin cible, et un paramètre pour la commande DIR comme dans les exemples suivants:

dtxt c:\temp *.txt 

En résumé, PUSHD pousse le nom du répertoire de travail actuel sur une pile LIFO et change de répertoire en c: \ temp.

La commande DIR exécute ensuite avec % 2 comme il est paramètre - dans ce cas '* txt'.

Enfin, POPD restaure le répertoire de travail précédent en le déconnectant de la pile.

Pour votre information, ce qui est équivalent à la commande DOS standard suivant:

dir c:\temp\*.txt 

La commande suivante dans DOS norme sera également très bien:

pushd & dir *.txt & popd 

Mais de toute évidence, 'dtxt' est plus court et enregistre les frappes!

+0

Voici ma sortie après je copie et collé la commande D: \> alias dtxt = 'pushd% 1 & dir% 2 $ et popd' Volume dans le lecteur D est nouveau volume Volume Numéro de série est Répertoire de D: \ Fichier introuvable 'popd'' n'est pas reconnu comme une commande interne ou externe, un fichier exécutable ou un fichier séquentiel. – freshWoWer

+0

freshWoWer, quel système d'exploitation utilisez-vous? Aussi, utilisez-vous 'Take Command'? - Si oui, quelle version? –

+0

J'utilise windowserver2008R2, et ne pas utiliser la commande take – freshWoWer