Categories:
Administration (10)
Adware Spyware (7)
Apache (10)
Bluetooth (125)
DOS Commands (1)
Edge (28)
General (2)
Internet Explorer (217)
Media Center (12)
Media Player (11)
Mozilla Firefox (18)
PHP (15)
Programming (8)
Security (4)
Silverlight (15)
Tips (17)
Tools (218)
Tutorials (5)
Windows 10 (166)
Windows 7 (636)
Windows 8 (1091)
Windows Phone (33)
Windows Server 2008 (165)
Windows Server 2012 (84)
Windows Server 2016 (23)
Windows Vista (52)
Collections:
Other Resources:
"call command" vs. "command"
What is the difference between "call command" and "command" in a batch file?
✍: FYIcenter.com
There are two formats to run another batch file (or any command) in a batch file:
1. "command" - Run the batch file (or any command) directly. The given command will be invoked in the current batch execution context.
2. "call command" - Run the batch file (or any command) indirectly with the "call" batch command. The given command will be invoked in a child batch execution context.
If the given command is a built-in command or an executable program, the above two formats behave almost in the way.
But if the given command is another batch file, "call command" behaves very different than "command".
When running another batch file in the current batch execution context using the "command" format, the current batch execution context will be terminated when the other batch file reaches the end.
When running another batch file in a child batch execution context using the "call command" format, the child batch execution context will be terminated when the other batch file reaches the end. The current batch execution context will stay to continue on the next line.
Here is batch file, Call-Batch.bat, that running another batch file in two formats, "call command" and "command":
@echo off rem Call-Batch.bat - Call other batch files call Other-Batch.bat "First call" call Other-Batch.bat "Second call" Other-Batch.bat "Third call" Other-Batch.bat "Fourth call"
There is the other batch file, Other-Batch.bat, to be called to perform some tasks:
@echo off rem Other-Batch.bat - The other batch file to be called echo %1 - Running the other batch
Here the execution result of Call-Batch.bat:
C:\fyicenter>Call-Batch.bat "First call" - Running the other batch "Second call" - Running the other batch "Third call" - Running the other batch
Why the "Fourth call" was not executed? Because the Call-Batch.bat execution context was terminated by running "Other-Batch.bat" directly in the context.
⇒ "if" - Run Command Conditionally
2021-04-02, 1557👍, 0💬
Popular Posts:
What is "Lenovo Hotkey Client Loader" in my Windows 7 service list? And how is "Lenovo Hotkey Client...
Where to find tutorials on managing Windows 8 scheduled tasks? Here is a collection of tutorials on ...
How to change the Bluetooth device name on your Windows XP system? If you want to change the Bluetoo...
What is HelpSvc.exe - Microsoft Help Center Service? That is HelpSvc.exe? There many answers on the ...
How to view services with the System Configuration tool "msconfig.exe" on Windows 7? System Configur...