Windows Shell 学习 4

今天说说如何使用变量。 

在Shell中,可以通过%1来访问命令后面带的第一个参数,以此类推,%9访问命令后的第9个参数,但是没有%10,%9是最后可以访问的参数。而%*是列出传入的所有参数,%0是列出命令本身。那么要是有第十个参数,如何取得啊?这就要用到SHIFT这个命令了。SHIFT命令是把所有参数向左移动一个位置。这样你就可以通过%9来访问第十个参数了。如果参数中的字符串中有空格,一定要把这个参数用双引号引起,否则Shell会认为是两个参数。给变量赋值的语句是SET,用法如下:
SET [Variable=[Value]]
SET /A Expression
SET /P Variable=[MassagePrompt]
其中,/A 后面跟的是数学表达式,如SET /A x = 1 + 2,其中的操作符可以是+,-,*,/,%和+=,-=,*=,/=,%=

下面说说环境变量,环境变量分为2种,一是用户环境变量,一是系统环境变量。这些变量的访问都是%变量名%,如%WINDIR%是Windows的路径。你可以通过SET命令,查看所有的环境变量。注意,在变量赋值的时候,如果存在空格在等号左边,则被认为是变量名的一部分,要是空格出现在等号右边,则被认为是变量值的一部分。所有等号左右两边不应该有空格的出现。而SET /A 则不会存在这样的问题。

下面说如何设置局部变量,是通过SETLOCAL和ENDLOCAL设置的。如
SETLOCAL
    SET x=true
    ECHO x = %x%
ENDLOCAL
ECHO x = %x%
第一个ECHO会出现x = true,而第二个则是x = 。因为第二个ECHO中的x变量不在赋值的作用域内了。

下面说说对字符串的操作:
替换操作:%VariableName:OriginalString=ReplacementString%,如要替换Hello World中的World为China:
SET x=Hello World
SET y=%x:World=China%
截取操作:%VariableName:~StartPosition,Length%,如要截取Hello中的,He:
SET x=Hello
SET y=%x:~0,2%

今天就看了这么多,明天看条件逻辑

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值