Linux学习日志4:shell中{}()和source的使用

一.{}()的使用

①.{}中字符删除替换方法

# 是去掉左边(键盘上#在 $ 的左边)
%是去掉右边(键盘上% 在$ 的右边)

file=/dir1/dir2/dir3/my.file.txt
${file#*/}#删掉第一个 / 及其左边的字符串:dir1/dir2/dir3/my.file.txt
${file##*/}#删掉最后一个 /  及其左边的字符串:my.file.txt
${file#*.}#删掉第一个 .  及其左边的字符串:file.txt
${file##*.}#删掉最后一个 .  及其左边的字符串:txt
${file%/*}#删掉最后一个  /  及其右边的字符串:/dir1/dir2/dir3
${file%%/*}#删掉第一个 /  及其右边的字符串:(空值)
${file%.*}#删掉最后一个  .  及其右边的字符串:/dir1/dir2/dir3/my.file
${file%%.*}#删掉第一个  .   及其右边的字符串:/dir1/dir2/dir3/my 

②、{}与()的区别

linux shell:${var1##*:} ${bz1%,*}的意思_瑞轩(wumj)的博客-CSDN博客介绍下Shell中的${}、##和%%使用范例,本文给出了不同情况下得到的结果。假设定义了一个变量为:代码如下:file=/dir1/dir2/dir3/my.file.txt可以用${ }分别替换得到不同的值:${file#*/}:删掉第一个 / 及其左边的字符串:dir1/dir2/dir3/my.file.txt${file##*/}:删掉最后一个 /  及其左边的字符串:my.file.t...https://blog.csdn.net/wmjCode/article/details/80662501

二、source

用法:source filename . filename 效果一样

在编译核心时,常常要反复输入一长串命令,如 

cd /home/shared/hisi/nlite_ipc
. gk_7605_v100.sh 123
cd ..
cd ..
cd GKIPCLinuxV100R001C00SPC030/
. ./build/env.sh
cd ../nlite_ipc/
. gk_7605_v100.sh  123
make clean
make all

这些命令既长,又繁琐。而且有时候容易输错,浪费你的时间和精力。如果把这些命令做成一个文件,让它自动按顺序执行,对于需要多次反复编译核心的用户来说,会很方便。

用source命令可以办到这一点。它的作用就是把一个文件的内容当成是shell来执行。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值