|
shell(Linux、Solaris)
|
bat(windows)
|
含义
|
|
#
|
rem
|
注释行
|
|
/【directory】/【directory】/.../【directory】/
|
【disk】:\【directory】\【directory】\...\【directory】\
|
path
|
|
【变量】=【文件名】,LBSAM
|
set 【变量】=【文件名】,BSAM
|
把文件名赋值给变量
|
|
【变量】=【设定值】
【变量】="【设定值】"
【变量】='【设定值】'
【变量】=【设定值】; export 【变量】
export 【变量】=【设定值】
|
set 【变量】=【设定值】
|
变量的赋值
|
|
unset 【变量】
|
set 【变量】=
|
变量的初始化
|
|
${【变量】}
$【变量】
|
%【变量】%
|
变量的引用
※如果变量在if语句和for循环中被赋值了的话,
在引用的时候需要用!【变量】!。
※如果使用!【变量】!,要添加(延迟环境变量)
setlocal enabledelayedexpansion
|
|
$【数字】
${【数字】}
|
%【数字】
|
shell/bat启动的时候,传入的第【数字】个参数
$1/%1 →启动时传入的第一个参数
|
|
【变量】=`basename $0 .sh`
|
set 【变量】=%~n0
|
本shell/bat的文件名字赋值给变量
test1.sh/test.bat → 变量=test
|
|
【变量】=`dirname 【文件】`
|
for %%i in ("【文件】") do (set 【变量】=%%~dpi)
|
取得所在文件路径赋值给变量
例 :
shell:
path1=`dirname /home/dir1/dir2/test.txt`
↓
path1=/home/dir1/dir2
bat :
for %%i in ("D:\dir1\dir2\test.txt") do (
set path2=%%~dpi
)
↓
path2=D:\dir1\dir2
|
|
【变量】=`basename 【文件】`
|
for %%i in ("【文件】") do (set 【变量】=%%~nxi)
|
取得所在文件路径赋值给变量
例 :
shell:
filename1=`dirname /home/dir1/dir2/test.txt`
↓
filename1=test.txt
bat :
for %%i in ("D:\dir1\dir2\test.txt") do (
set filename2=%%~dpi
)
↓
filename2=test.txt
|
|
【变量】=$?
|
set 【变量】=%errorlevel%
|
上一个命令执行的结果赋值给变量
|
if [ 【条件】 ]; then
【处理1】
else
【处理2】
fi
|
if 【条件】 (
【处理1】
) else (
【处理2】
)
|
※shell里面的if语句(if test 【条件】)和
(if [ 【条件】 ])意思一样
|
|
if [ $【变量】 -eq 【数值】 ]; then
|
if %【变量】% equ 【数值】 (
|
等于
|
|
if [ $【变量】 -ne 【数值】 ]; then
|
if %【变量】% neq 【数值】 (
|
不等于
|
|
if [ $【变量】 -lt 【数值】 ]; then
|
if %【变量】% lss 【数值】 (
|
小于
|
|
if [ $【变量】 -le 【数值】 ]; then
|
if %【变量】% leq 【数值】 (
|
小于等于
|
|
if [ $【变量】 -gt 【数值】 ]; then
|
if %【变量】% gtr 【数值】 (
|
大于
|
|
if [ $【变量】 -ge 【数值】 ]; then
|
if %【变量】% geq 【数值】 (
|
大于等于
|
|
if [ $【变量】 = "【字符串】" ]; then
|
if %【变量】%==【文字列】 (
|
等于
|
|
if [ $【变量】 != "【字符串】" ]; then
|
if not %【变量】%==【文字列】 (
|
不等于
|
|
if [ -e 【文件 or 文件夹】 ]; then
|
if exist 【文件 or 文件夹】 (
|
文件或文件夹存在
|
|
if [ ! -e 【文件or 文件夹】 ]; then
|
if not exist 【文件 or 文件夹】 (
|
文件或文件夹不存在
|
|
if [ -f 【对象】 ]; then
|
for %%A in ("【对象】") do (set 【变量】=%%~aA)
if "%【变量】:~0,1%"=="-" (
|
对象是文件
※shell里面如果是if [ ! -f 【对象】 ]; then的时候,对应的bat是
if not "%【变量】:~0,1%"=="-" (
意思是判断对象是否是文件以外
|
|
if [ -d 【对象】 ]; then
|
for %%A in ("【对象】") do (set 【变量】=%%~aA)
if "%【变量】:~0,1%"=="d" (
|
对象是文件夹
|
|
if [ -s 【文件】 ]; then
|
for %%A in ("【文件】") do (set 【变量】=%%~zA)
if %【变量】% gtr 0 (
|
文件的size大于0
|
shell(Linux、Solaris) bat(windows) 含义 # rem 注释行 /【directory】/【directory】/.../【directory】/ 【disk】:\【directory】\【directory】\...\【directory】\ path 【变量】=【文件名】,LBSAM set 【变量】=【文件名...
简单的Ba
sh
脚本到
Windows
批处理
文件
转换
器
将ba
sh
脚本( *.
sh
)
转换
为
Windows
批处理
文件
( *.
bat
)。 这不应该是一个完全完整/正确的工具,而是
转换
脚本时的起点。 对于简单的脚本,这可能会创建正确的结果。
在线尝试: :
git clone https://github.com/daniel-sc/ba
sh
-
shell
-to-
bat
-converter.git
cd ba
sh
-
shell
-to-
bat
-converter
npm install
npm run tsc
node lib/cli.js FILE_TO_CONVERT.
sh
这将创建FILE_TO_CONVERT.
bat
。
随时欢迎公关人员;-)
最近公司迁移服务器,从
windows
系统改为
linux
系统,里面有一些老程序是直接用
bat
文件
启动的。
在
linux
中需要启动.
sh
文件
才行,所以需要将
bat
文件
改成
sh
文件
才行
先粘出
bat
文件
和
sh
文件
,里面需要的jar包比较多我就删了一部分jar包
bat
:
@echo offs
set lib=E:\newSpace\androidBass\lib
set CLASSPATH=...
REM 该命令后的内容不被执行,但能回显。:: 也可以起到rem 的注释作用, 但有两点需要注意:
第一, 任何以冒号:开头的字符行, 在批处理中都被视作标号, 而直接忽略其后的所有内容。
有效标号:冒号后紧跟一个以字母数字开头的字符串,goto语句可以识别。
无效标号:冒号后紧跟一个非字母数字的一个特殊符号,goto无法识别的标号,可以起到注释作用,所以 :: ...
原文之地:http://blog.csdn.net/Nicolas_Yang/archive/2008/12/12/3504480.aspx
【JAVA 中执行
Shell
】
j
Shell
.java
/* * j
Shell
.java * class j
Shell
is used for executing
shell
command * USAGE: * j
Shell
obj=new jS...
tomcat的bin
文件
夹中存在一份.
bat
文件
和相对应的.
sh
文件
,一个是为了在window系统上执行的
文件
,另一个是
linux
下的批处理
文件
。例如:startup.
bat
和startup.
sh
。
bat
是dos下的批处理
文件
。批处理
文件
是无格式的文本
文件
,它包含一条或多条命令。它的
文件
扩展名为
.
bat
或 .cmd。在命令提示下键入批处理
文件
的名称,或者双击该批处理
文件
,系统就会调用C
在一行中运行两个或多个命令可以节省大量时间,并在
Linux
中提高效率。在
Linux
中,有三种方法可以在一行中运行多个命令:使用 ; 符号运行多条命令其中最简单的是分号(;),使用方式如下:cmd1; cmd2; cmd3
cmd1将首先运行,不管cmd1运行成功还是出现错误,cmd2都会在它之后运行,当cmd2命令完成时,cmd3将会运行。[root@localhost ~]# mkdir /ro...
要编辑
Linux
的
shell
脚本
文件
,可以使用任何文本编辑器,如vi、nano、gedit等。首先需要打开终端窗口,进入到要编辑的脚本
文件
所在的目录,然后使用命令行打开编辑器,如:
vi script.
sh
然后就可以在编辑器中对脚本进行编辑和保存。编辑完成后,可以使用chmod命令修改脚本
文件
的权限,使其可以执行,如:
chmod +x script.
sh
最后,可以使用./命令来执行脚本
文件
,如:
./script.
sh
这样就可以运行脚本了。