一.{}()的使用
①.{}中字符删除替换方法
# 是去掉左边(键盘上#在 $ 的左边)
%是去掉右边(键盘上% 在$ 的右边)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
②、{}与()的区别
二、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来执行。