Shell 记事本

字符串相关

${var#*token}  //#表示一,*token是正则表达式,从左删除,直到删除完token
${var##*token}  //##表示最后,*token是正则表达式,从左删除,直到删除完token
${var%token*}  //%表示一,*token是正则表达式,从右删除,直到删除完token
${var%%token*}  //#表示最后,*token是正则表达式,从右删除,直到删除完token
${var:0:5}  //从0开始数五个
imagearray=(${images//{\"image\":\"/ })对变量images按照{\"image\":\"进行分割,//与/之间与分割的字符 ,另外/后有一个空格不可省略 
sort -k2n final | uniq   //排序去重

语法相关

if[[a=~b]] ,其中=~为匹配正则表达式

管道

管道会开启subShell需要注意,管道中的变量作用域相当于自函数中的变量作用域

$相关

$0 这个程式的执行名字
$n 这个程式的第n个参数值,n=1..9
$* 这个程式的所有参数,此选项参数可超过9个。
$# 这个程式的参数个数
$$ 这个程式的PID(脚本运行的当前[进程ID](https://www.baidu.com/s?wd=%E8%BF%9B%E7%A8%8BID&tn=SE_PcZhidaonwhc_ngpagmjz&rsv_dl=gh_pc_zhidao))
$! 执行上一个背景指令的PID(后台运行的最后一个进程的[进程ID](https://www.baidu.com/s?wd=%E8%BF%9B%E7%A8%8BID&tn=SE_PcZhidaonwhc_ngpagmjz&rsv_dl=gh_pc_zhidao))
$? 执行上一个指令的返回值 (显示最后命令的退出状态。0表示没有错误,其他任何值表明有错误)
$- 显示shell使用的当前选项,与set命令功能相同
$@$*类似,“$@”为“$1"$2" ... "$n", "$*""$1 $2 ... $n"

diff $var v a r " {var} " var"{var}"
$var ${var}
假设
variable=“var”
var=“var”
${var}iable=variable
v a r i a b l e = v a r 括 号 用 于 表 示 想 取 的 变 量 是 哪 个 " {variable}=var 括号用于表示想取的变量是哪个 " variable=var"{var}"
双引号表示当作一个字符串处理
https://stackoverflow.com/questions/18135451/what-is-the-difference-between-var-var-and-var-in-the-bash-shell

根据配置文件生成Value注入的属性

awk -F= '{n=split($1,a,".");print "@Value(\"${"$1"}\")\nprivate String "a[n]";"}' origin
while getopts :u:n:f:b:j:m:i:c:vh arg; do
    case $arg in
        u) u=$OPTARG;;
        n) h=$OPTARG;;
        .
        .
        .
        *\?) usage ;;
    esac
done
expr index $var "aaa"
#{x/a/b}
#{x//a/b/}

列转行

cat file | xargs echo -n 转之后空格分割
cat file | xargs echo -n | sed 's/ /想要的分隔符/g'

行转列

sed 's/现有分隔符/\n/g' file
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值