を実行するための行を呼び出すために、別のバッチスクリプトを呼び出すには、その後、別のバッチの中に、コマンド(commands.bat)バッチスクリプト - 特定のコマンドに
ECHO HELLO
ECHO HOLA
ECHO KONICHIWA
ECHO ANYONGHASEYO
ECHO BONJOUR
の束とバッチファイルを作成することが可能ですファイル、CALL commands.bat
とその行に何がわからずに行2または行4でコマンドを実行しますか?
を実行するための行を呼び出すために、別のバッチスクリプトを呼び出すには、その後、別のバッチの中に、コマンド(commands.bat)バッチスクリプト - 特定のコマンドに
ECHO HELLO
ECHO HOLA
ECHO KONICHIWA
ECHO ANYONGHASEYO
ECHO BONJOUR
の束とバッチファイルを作成することが可能ですファイル、CALL commands.bat
とその行に何がわからずに行2または行4でコマンドを実行しますか?
ここにwh私は私のコメントで意味した。
@echo off
more +3 master.bat > temp.bat & temp.bat
master.bat
echo abcd
echo hello
echo notepad
echo public
echo wind
echo balance
command.batは私のために以下を印刷します。
public
wind
balance
最初の行から開始するには、+0
を使用してください。
あなたは、この数は、コマンドラインを介して送信されるようにしたい場合は、ここで少し変更したバージョンです:
command.bat
@echo off
more +%1 master.bat > temp.bat & temp.bat
は、あなたはこのようなcommand.bat 0
かなどのコマンドで上記を実行することができますcommand.bat 3
。
n-through-EOFではなくn番目の行だけを実行したい場合は、http://stackoverflow.com/questions/6409869/echo-the-nth-line-from-a-を参照してください。 text-file-n-a-command-line-argumentであり、あなたが望むものを得るために私の答えと組み合わせてください。 – adarshr
あなたのリンク先のJebの回答を使用します。答えを設定する。 – Mechaflash
私は(バッチファイルが流行していた時に戻って)あなたは、例えばとの最初の行を交換するときには、より多くのintestingになっ
SET JUMPTO=HOLA
goto BRANCH_%JUMPTO%
:BRANCH_HELLO
echo HELLO
GOTO :QUIT
:BRANCH_HOLA
echo HOLA
GOTO :QUIT
:BRANCH_KONICHIWA
echo KONICHIWA
GOTO :QUIT
:BRANCH_ANYONGHASEYO
echo ANYONGHASEYO
GOTO :QUIT
:BRANCH_BONJOUR
echo BONJOUR
GOTO :QUIT
:BRANCH_
echo Illegal branch?!
:QUIT
知るために使用小ぎれいなトリック
SET JUMPTO=%1
いくつかのテスト出力:
をTEST.CMDE:> \ test.cmdの
E:\>SET JUMPTO=HELLO E:\>goto BRANCH_HELLO E:\>echo HELLO HELLO E:\>GOTO :QUIT
Eハロー:>は\
E:\>SET JUMPTO= E:\>goto BRANCH_ E:\>echo Illegal branch?! Illegal branch?! E:\>
これを解決策として私に教えてください。それは動作しますが、私は何人かの人々が=/
REM Contents of COMMANDS.BAT
ECHO HELLO & ::1
ECHO HOLA & ::2
ECHO KONICHIWA & ::3
ECHO ANYONGHASEYO & ::4
ECHO BONJOUR & ::5
REM Command to perform ECHO KONICHIWA out of COMMANDS.BAT
CALL C:\COMMANDS.BAT | FIND "3"
素晴らしいアイデアです!私はあなたのやり方に似た別の答えを加えます。 – adarshr
これはMechaflash's答えに似ているが、findstr
の代わりfind
を利用したものにFINDコマンドをパイプ好きではありません知っています。
master.bat
echo abcd &rem line1
echo hello &rem line2
echo notepad &rem line3
echo public &rem line4
echo wind &rem line5
echo balance &rem line5
コマンド。バット
@echo off
findstr line%1 master.bat > temp.bat & temp.bat
いっそのこと、私は、これは昨日それで遊んで発見:
REM Contents of COMMANDS.BAT
ECHO HELLO & ::1
ECHO HOLA & ::2
ECHO KONICHIWA & ::3
ECHO ANYONGHASEYO & ::4
ECHO BONJOUR & ::5
-
REM Command to perform ECHO KONICHIWA out of COMMANDS.BAT
FINDSTR ::3 COMMANDS.BAT | START /B
私は出力に別のバットにラインを持っていないその方法ファイルを作成すると、すぐにコマンドが実行されます。
はい、特定の引数に依存して 'echo Hola'と' echo Bonjour'を条件付きで行い、 'commands.bat'を呼び出してその引数を送ります。 – adarshr
http://commandwindows.com/batchfiles-branching.htm – sehe
私の質問を編集しました。重要な細部を残しておいてください:文字列に含まれているものではなく、行番号で呼び出します。 – Mechaflash