Linux 系统学习 之 shell脚本学习

本文介绍了 Shell 脚本中的实用技巧,包括冒号的多种用途、使用大括号进行文件名扩展、重定向标准输出及错误输出的方法等。通过这些技巧可以更高效地管理和操作文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、:(冒号的妙用)

: ${username=`whoami`} #当作占位符
: ${HOSTNAME?} ${USER?} ${MAIL?} #评估参数是否设置
: > data.xxx #文件"data.xxx"现在被清空了,这个和 cat /dev/null > data.xxx的作用是一样的,但是不会产生新进程,因为冒号:是一个内建命令。

2、 articlelist_1442255022_0_1.html articlelist_1442255022_0_2.html articlelist_1442255022_0_3.html blog_55f710ae010002t9.html blog_55f710ae010002ta.html blog_55f710ae010002u6.html blog_55f710ae010002xx.html blog_55f710ae01000308.html blog_55f710ae01000380.html blog_55f710ae010003cc.html blog_55f710ae010003dj.html blog_55f710ae010004d0.html blog_55f710ae010004d2.html blog_55f710ae010004d3.html blog_55f710ae010004d7.html blog_55f710ae010004il.html blog_55f710ae010004sf.html blog_55f710ae01000523.html blog_55f710ae010005cn.html blog_55f710ae010005g8.html blog_55f710ae010005ie.html blog_55f710ae010005y5.html blog_55f710ae0100068z.html blog_55f710ae01000690.html blog_55f710ae010006dv.html blog_55f710ae010006hz.html blog_55f710ae010006jx.html blog_55f710ae010006me.html blog_55f710ae010006oi.html blog_55f710ae010006oy.html blog_55f710ae010006y8.html blog_55f710ae0100071z.html blog_55f710ae01000768.html blog_55f710ae010007a7.html blog_55f710ae010007a8.html blog_55f710ae010007hp.html blog_55f710ae010007jj.html blog_55f710ae010007kb.html blog_55f710ae010007oq.html blog_55f710ae01000859.html blog_55f710ae01000863.html blog_55f710ae01000866.html blog_55f710ae01000867.html blog_55f710ae01000885.html blog_55f710ae010008ao.html blog_55f710ae010008aq.html blog_55f710ae010008as.html blog_55f710ae010008d4.html blog_55f710ae010008dd.html blog_55f710ae010008e6.html blog_55f710ae010008h3.html blog_55f710ae010008iv.html blog_55f710ae010008j4.html blog_55f710ae010008j8.html blog_55f710ae010008jl.html blog_55f710ae010008jo.html blog_55f710ae010008pm.html blog_55f710ae010008ux.html blog_55f710ae010008uy.html blog_55f710ae010008v8.html blog_55f710ae0100096s.html blog_55f710ae010009e8.html blog_55f710ae010009p6.html blog_55f710ae010009px.html blog_55f710ae010009t3.html blog_55f710ae010009vs.html blog_55f710ae01000az5.html blog_55f710ae01000b58.html blog_55f710ae01000bcr.html blog_55f710ae01000bcu.html blog_55f710ae01000bdh.html blog_55f710ae01007r6i.html blog_55f710ae01007r8p.html blog_55f710ae01007trl.html blog_55f710ae010085a8.html blog_55f710ae010085mq.html blog_55f710ae01008631.html blog_55f710ae010086ok.html blog_55f710ae01008l7n.html blog_55f710ae01008l7y.html blog_55f710ae01008la8.html blog_55f710ae01008pck.html blog_55f710ae01008yyt.html blog_55f710ae01008zc7.html blog_55f710ae01008zcx.html blog_55f710ae01008zdb.html blog_55f710ae010090mc.html blog_55f710ae010096av.html blog_55f710ae010096q7.html blog_55f710ae010096ue.html blog_55f710ae01009bag.html blog_55f710ae01009bdo.html blog_55f710ae01009bf5.html blog_55f710ae01009cey.html blog_55f710ae01009ciy.html blog_55f710ae01009ddf.html cookiecsdn.txt csdn.html dblog_55f710ae010002t9.html dblog_55f710ae010002ta.html dblog_55f710ae010002u6.html dblog_55f710ae010002xx.html dblog_55f710ae01000308.html dblog_55f710ae01000380.html dblog_55f710ae010003cc.html dblog_55f710ae010003dj.html dblog_55f710ae010004d0.html dblog_55f710ae010004d2.html dblog_55f710ae010004d3.html dblog_55f710ae010004d7.html dblog_55f710ae010004il.html dblog_55f710ae010004sf.html dblog_55f710ae01000523.html dblog_55f710ae010005cn.html dblog_55f710ae010005g8.html dblog_55f710ae010005ie.html dblog_55f710ae010005y5.html dblog_55f710ae0100068z.html dblog_55f710ae01000690.html dblog_55f710ae010006dv.html dblog_55f710ae010006hz.html dblog_55f710ae010006jx.html dblog_55f710ae010006me.html dblog_55f710ae010006oi.html dblog_55f710ae010006oy.html dblog_55f710ae010006y8.html dblog_55f710ae0100071z.html dblog_55f710ae01000768.html dblog_55f710ae010007a7.html dblog_55f710ae010007a8.html dblog_55f710ae010007hp.html dblog_55f710ae010007jj.html dblog_55f710ae010007kb.html dblog_55f710ae010007oq.html dblog_55f710ae01000859.html dblog_55f710ae01000863.html dblog_55f710ae01000866.html dblog_55f710ae01000867.html dblog_55f710ae01000885.html dblog_55f710ae010008ao.html dblog_55f710ae010008aq.html dblog_55f710ae010008as.html dblog_55f710ae010008d4.html dblog_55f710ae010008dd.html dblog_55f710ae010008e6.html dblog_55f710ae010008h3.html dblog_55f710ae010008iv.html dblog_55f710ae010008j4.html dblog_55f710ae010008j8.html dblog_55f710ae010008jl.html dblog_55f710ae010008jo.html dblog_55f710ae010008pm.html dblog_55f710ae010008ux.html dblog_55f710ae010008uy.html dblog_55f710ae010008v8.html dblog_55f710ae0100096s.html dblog_55f710ae010009e8.html dblog_55f710ae010009p6.html dblog_55f710ae010009px.html dblog_55f710ae010009t3.html dblog_55f710ae010009vs.html dblog_55f710ae01000az5.html dblog_55f710ae01000b58.html dblog_55f710ae01000bcr.html dblog_55f710ae01000bcu.html dblog_55f710ae01000bdh.html dblog_55f710ae01007r6i.html dblog_55f710ae01007r8p.html dblog_55f710ae01007trl.html dblog_55f710ae010085a8.html dblog_55f710ae010085mq.html dblog_55f710ae01008631.html dblog_55f710ae010086ok.html dblog_55f710ae01008l7n.html dblog_55f710ae01008l7y.html dblog_55f710ae01008la8.html dblog_55f710ae01008pck.html dblog_55f710ae01008yyt.html dblog_55f710ae01008zc7.html dblog_55f710ae01008zcx.html dblog_55f710ae01008zdb.html dblog_55f710ae010090mc.html dblog_55f710ae010096av.html dblog_55f710ae010096q7.html dblog_55f710ae010096ue.html dblog_55f710ae01009bag.html dblog_55f710ae01009bdo.html dblog_55f710ae01009bf5.html dblog_55f710ae01009cey.html getTags.sh tag.txt transBlog.sh url.txt 是幂运算
3、$? 退出状态变量.$?保存一个命令/一个函数或者脚本本身的退出状态.
$$ 进程ID 变量.这个$$变量保存运行脚本进程ID

4、大括号 {xxx,yyy,zzz...}
大括号扩展,如:
cat {file1,file2,file3} > combined_file
# 把file1,file2,file3 连接在一起,并且重定向到combined_file 中.
cp file22.{txt,backup} # 拷贝"file22.txt" 到"file22.backup"中

echo {file1,file2} :{ A," B",' C'}
#输出file1 : A file1 : B file1 : C file2 : A file2 : B file2 : C

大括号代表代码块,但是其中的变量是可以被外面看到的。而小括号中的变量与外界无关。

5、重定向
command &>filename 重定向stdout 和stderr 到文件中
command >&2 重定向command 的stdout 到stderr

6、排序,删除重复的
cat *.lst | sort | uniq

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值