添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
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 这样就可以运行脚本了。