shell 引号、括号 用法详解

10 篇文章 0 订阅

1、单引号、双引号、反引号区别

单引号、双引号用于当变量出现空格时,用引号括起来,加以区分

单双引号的区别:

单引号括起来的所有字符都是普通字符,就算是特殊字符也等同为普通字符

双引号中的“$”、"\"以及反引号都是有特殊含义的,“$”表示引用变量的值,反引号表示引用命令

反引号`命令`和$(命令)的的作用是一样的,调用命令的输出或者把命令的输出赋予变量,但是反引号的使用容易和单引号搞混,所以使用$(命令)更好一点

2、大小括号区别

父shell 与 子shell

在bash中是可以调用新的bash的,

在原来的shell中执行pstree 进程为

调用新的bash 执行patree 进程为 

 我们的命令都是通过ssh远程服务连接的,在ssh中生成了第一个bash,就是父shell

因为在第二条命令前又执行了bash命令,所以在第一个bash中生成了第二个bash,也就是子shell,我们是在子shell中运行pstree的。

大小括号的区别

()执行一串命令时,需要重新开启一个子shell来执行

{}执行一串命令时,在当前shell中执行

()与{}都是把一串命令放在括号中,命令之间用;隔开

()最后一条命令可以不用分号;而{}的最后一条命令也需要分号

{}的第一条命令和左括号之间必须有一个空格,()里的各命令不必和括号有空格

()和{}括号中的某条命令的重定向只影响该命令,但括号外的重定向会影响括号里的所有命令

由例可以看出 ,在执行一串命令时,如果使用的小括号(),那么这串命令 所做的操作都只在子shell中生效,一旦命令结束回到父shell中,那么所做的修改就会失效;如果使用的大括号{},那么这串命令所有的操作都是在父shell中执行的,就算命令结束,所做的修改依然生效。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值