linux shell脚本攻略04-将命令序列的输出读入变量,管道

ls | cat -n > out.txt

①子shell的方式

output=$(ls |cat -n)

②反引用

output=`ls | cat -n`

第一种方式是子shell的这种方式,利用子shell生成一个独立的进程,可以使用()操作符来定义一个子shell;注意:命令在子shell中执行不会对当前shell有任何影响,所有的改变仅限于子shell

pwd;
(cd /bin;ls)
pwd;

由于cd是在子shell中运行,不影响父shell,两次pwd结果一致

在使用子shell或者反引用的方式时,可以将它放入一个双引号中,以保留空格和换行符\n

运行命令直至执行成功

while true
do	
$@ && return
done

一种更快的做法

while :
do
$@ && return
done

true是作为/bin下的一个二进制文件来实现的,所以第一种写法每次循环会fork一个紫禁城,第二种中的:符号是shell内建命令,他总是会返回0的退出码,效率更好

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值