廊坊北京网站建设,网站设计就业前景,快速排名怎么做,wordpress技术教程 pdf核心, 执行一行解析一行
windows:执行的地方进行解析, 可以任意跳转执行;
bash从上往下解析执行; 一行行解析发现语法错误;
差异: windows可以部分不解析; linux需要从上往下解析合法;
总结:linux, windows可以一上一下共存
# linux code# windows code 关键: 脚本解析的差…核心, 执行一行解析一行
windows:执行的地方进行解析, 可以任意跳转执行;
bash从上往下解析执行; 一行行解析发现语法错误;
差异: windows可以部分不解析; linux需要从上往下解析合法;
总结:linux, windows可以一上一下共存
# linux code# windows code 关键: 脚本解析的差异和符号的差异
:在windows是注释, bash是强制扩张变量, 或者重定向; 利用这个特性和解析特性可以使得脚本共存。
代码
:; if [ ! linux ] ; then
echo off
goto :windows_bat_code
exit /b 0
fifunction linux_bash_code
{echo this is linux, linux code program;
} linux_bash_code exit:windows_bat_code
setlocal
echo this is windows, windows code program;
endlocal exit /b 0windows平台, 第一行都是注释; 直接执行2, 3, 4;linux平台;则第二行代码, 执行if, 一定false, 即内部代码不会执行解析; 继续下面执行linux代码;
:; if [ ! linux ]; then
echo windows;
exit
else
echo linux
exit
fi参考
https://stackoverflow.com/questions/17510688/single-script-to-run-in-both-windows-batch-and-linux-bash