我的意思是可以在Win32和Linux i386中运行单个二进制文件吗?
我注意到Windows 7能够执行.sh文件,就好像它们是.bat文件一样.这让我想知道是否有可能写一个.sh文件,以便它可以在Windows 和 Linux中执行(比方说bash).
我想到的第一件事是制作一个if语句,使得Windows和Ubuntu可以处理它并跳转到相应的块来执行特定于plattform的命令.怎么可以这样做?
注意:我知道这不是好习惯.我也知道像Python这样的脚本语言比混合语法命令行脚本更适合解决这个问题.我只是好奇...
我对Java或编程很新.在我通过互联网来掌握这种语言的旅程中,我提出了"多次在任何地方运行"的说法.
但我发现许多软件要求您为您的操作系统选择合适的版本.有时只有一个版本可用.
你能解释一下为什么会这样吗?
我需要创建一个集成脚本来设置一些环境变量,使用wget下载文件并运行它.
挑战在于它需要是可以在Windows PowerShell和bash/shell上运行的SAME脚本.
这是shell脚本:
#!/bin/bash
# download a script
wget http://www.example.org/my.script -O my.script
# set a couple of environment variables
export script_source=http://www.example.org
export some_value=floob
# now execute the downloaded script
bash ./my.script
Run Code Online (Sandbox Code Playgroud)
这与PowerShell中的情况相同:
wget http://www.example.org/my.script -O my.script.ps1
$env:script_source="http://www.example.org"
$env:some_value="floob"
PowerShell -File ./my.script.ps1
Run Code Online (Sandbox Code Playgroud)
所以我想知道这两个脚本是否可以合并并在任一平台上成功运行?
我一直在试图找到一种方法将它们放在同一个脚本中,并让bash和PowerShell.exe忽略错误,但没有成功.
任何猜测?