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外部命令等

目录
相关文章
|
10天前
|
Web App开发 Java Linux
Linux之Shell基本命令篇
Linux之Shell基本命令篇
Linux之Shell基本命令篇
|
27天前
|
安全 Shell Linux
【Shell 命令集合 系统管理 】Linux 锁定终端 vlock命令 使用指南
【Shell 命令集合 系统管理 】Linux 锁定终端 vlock命令 使用指南
35 1
|
27天前
|
监控 Shell Linux
【Shell 命令集合 系统管理 】Linux 显示当前登录到系统的用户信息 who命令 使用指南
【Shell 命令集合 系统管理 】Linux 显示当前登录到系统的用户信息 who命令 使用指南
42 1
|
27天前
|
监控 Shell Linux
【Shell 命令集合 系统管理 】Linux 显示目前登入系统的用户信息 w命令 使用指南
【Shell 命令集合 系统管理 】Linux 显示目前登入系统的用户信息 w命令 使用指南
42 2
|
27天前
|
存储 Shell Linux
【Shell 命令集合 系统管理 】Linux 修改用户的属性和配置 usermod命令 使用指南
【Shell 命令集合 系统管理 】Linux 修改用户的属性和配置 usermod命令 使用指南
30 1
|
3天前
|
SQL 监控 安全
Linux&Windows 日志分析 陇剑杯 CTF
Linux&Windows 日志分析 陇剑杯 CTF
25 0
|
5天前
|
分布式计算 Hadoop Shell
Hadoop【基础知识 04】【HDFS常用shell命令】(hadoop fs + hadoop dfs + hdfs dfs 使用举例)
【4月更文挑战第4天】Hadoop【基础知识 04】【HDFS常用shell命令】(hadoop fs + hadoop dfs + hdfs dfs 使用举例)
18 5
|
11天前
|
Shell Linux
【Linux】12. 模拟实现shell
【Linux】12. 模拟实现shell
27 2
|
13天前
|
安全 Ubuntu Linux
Linux远程访问Windows实现步骤
在Windows上启用远程桌面连接并获取IP地址后,Linux用户需安装SSH客户端( Debian系:`sudo apt-get update; sudo apt-get install openssh-client`,RPM系:`sudo yum install openssh-clients`)。然后使用命令`ssh 用户名@Windows_IP地址`连接,其中`用户名`和`Windows_IP地址`按实际情况填写。
14 4
|
24天前
|
存储 算法 Shell
【Linux 环境变量相关】深入理解Linux下 CMake、Shell 与环境变量的交互(二)
【Linux 环境变量相关】深入理解Linux下 CMake、Shell 与环境变量的交互
44 0