Windows bat 调用Linux shell命令

简介: Windows使用Linux shell命令众所周知,Linux下的与windows的cmd不是一个量级的东西。对于使用惯了Linux,MacOS的经常切换到cmd会抓狂。

Windows使用Linux shell命令

众所周知,Linux下的与windows的cmd不是一个量级的东西。对于使用惯了Linux,MacOS的经常切换到cmd会抓狂。但是偶尔项目下又必须实现一些bat脚本。特别是在持续集成CI/CD部署时。
那么用windows bat调用gitbash,再调用Unix-like的命令的将是个很好的方法,至少能解决大部分需求。

img_0eac6bea751d62a6ca6d1c562448ecd2.png
gitbash.png

安装git-bash

安装 gitforwindows,https://gitforwindows.org (安装不表),虽然主要是实现git客户端,但是附带的bash很有用。

安装bash组件,并添加到系统参数(PATH),安装后,任意文件夹右键,会出现【Git Bash Here】打开后就默认进入类似Linux的终端。

bat 调用shell

使用bat调用sh脚本,

新建一个 test.bat 文件,写入以下内容:


echo "windows .bat call .shell script""
"C:\Program Files (x86)\Git\bin\sh.exe" --login -i -c "pwd"
"C:\Program Files (x86)\Git\bin\sh.exe" --login -i -c "cp a.txt b.txt"
"C:\Program Files (x86)\Git\bin\sh.exe" --login -i -c "./helloworld.sh"
"C:\Program Files (x86)\Git\bin\sh.exe" --login -i -c "curl 'https://oapi.dingtalk.com/robot/send?access_token=xxxxx' -H 'Content-Type: application/json' -d '{\"msgtype\": \"text\", \"text\": {\"content\":\"VIOM服务器58后端部署成功-\"}}'"

需要指定git-bash 安装目录
需要注意,部分windows字符,如双引号,单引号需要使用\ 进行转义。

这样就能实现

  1. 调用原生命令(在window下的bash只有部分Linux的系统命令)

  2. 调用常见的文件操作

  3. 调用本地shell脚本

  4. 调用curl外部命令等

目录
相关文章
|
1月前
|
安全 Linux 生物认证
Nexpose 8.25.0 for Linux & Windows - 漏洞扫描
Nexpose 8.25.0 for Linux & Windows - 漏洞扫描
87 0
Nexpose 8.25.0 for Linux & Windows - 漏洞扫描
|
2月前
|
Linux 应用服务中间件 Shell
二、Linux文本处理与文件操作核心命令
熟悉了Linux的基本“行走”后,就该拿起真正的“工具”干活了。用grep这个“放大镜”在文件里搜索内容,用find这个“探测器”在系统中寻找文件,再用tar把东西打包带走。最关键的是要学会使用管道符|,它像一条流水线,能把这些命令串联起来,让简单工具组合出强大的功能,比如 ps -ef | grep 'nginx' 就能快速找出nginx进程。
423 1
二、Linux文本处理与文件操作核心命令
|
1月前
|
安全 Linux iOS开发
Binary Ninja 5.1.8104 (macOS, Linux, Windows) - 反编译器、反汇编器、调试器和二进制分析平台
Binary Ninja 5.1.8104 (macOS, Linux, Windows) - 反编译器、反汇编器、调试器和二进制分析平台
328 53
Binary Ninja 5.1.8104 (macOS, Linux, Windows) - 反编译器、反汇编器、调试器和二进制分析平台
|
1月前
|
安全 Linux 生物认证
Nexpose 8.24.0 for Linux & Windows - 漏洞扫描
Nexpose 8.24.0 for Linux & Windows - 漏洞扫描
172 17
Nexpose 8.24.0 for Linux & Windows - 漏洞扫描
|
1月前
|
SQL 安全 Linux
Metasploit Pro 4.22.8-20251014 (Linux, Windows) - 专业渗透测试框架
Metasploit Pro 4.22.8-20251014 (Linux, Windows) - 专业渗透测试框架
116 1
Metasploit Pro 4.22.8-20251014 (Linux, Windows) - 专业渗透测试框架
|
1月前
|
Linux 网络安全 iOS开发
Metasploit Framework 6.4.95 (macOS, Linux, Windows) - 开源渗透测试框架
Metasploit Framework 6.4.95 (macOS, Linux, Windows) - 开源渗透测试框架
180 1
Metasploit Framework 6.4.95 (macOS, Linux, Windows) - 开源渗透测试框架
|
1月前
|
Linux API iOS开发
Binary Ninja 4.2.6455 (macOS, Linux, Windows) - 反编译器、反汇编器、调试器和二进制分析平台
Binary Ninja 4.2.6455 (macOS, Linux, Windows) - 反编译器、反汇编器、调试器和二进制分析平台
196 14
Binary Ninja 4.2.6455 (macOS, Linux, Windows) - 反编译器、反汇编器、调试器和二进制分析平台
|
1月前
|
Linux 虚拟化 iOS开发
VMware Remote Console 13.0.1 for macOS, Linux, Windows - vSphere 虚拟机控制台的桌面客户端
VMware Remote Console 13.0.1 for macOS, Linux, Windows - vSphere 虚拟机控制台的桌面客户端
389 0
VMware Remote Console 13.0.1 for macOS, Linux, Windows - vSphere 虚拟机控制台的桌面客户端
|
2月前
|
安全 Linux 网络安全
Metasploit Pro 4.22.8-2025091701 (Linux, Windows) - 专业渗透测试框架
Metasploit Pro 4.22.8-2025091701 (Linux, Windows) - 专业渗透测试框架
275 2
Metasploit Pro 4.22.8-2025091701 (Linux, Windows) - 专业渗透测试框架
|
2月前
|
JSON 安全 Linux
Nexpose 8.22.0 for Linux & Windows - 漏洞扫描
Nexpose 8.22.0 for Linux & Windows - 漏洞扫描
137 1
Nexpose 8.22.0 for Linux & Windows - 漏洞扫描