shell 获取字符串前面的空格

2025-05-23 14:53:48
推荐回答(3个)
回答1:

#可以使用awk实现:
echo "$a" | awk '{str=length($0); sub(/^[ ]*/,"",$0); print str-length($0);}'

如:a=“    aaa  xxx ccc   ”,执行结果为:4

希望可以帮助到你!

回答2:

这样算前面的空格长度:

b=$(echo "$a" | sed -r 's/( +)[^ ]+.*/\1/')
echo ${#b}

回答3:

$bash 1.shstring=how are you?string=ok?$cat 1.sh#!/usr/bin/bashwhile read stringdo echo "string=$string"done < 111 $cat 111how are you?ok?脚本名1.sh, 要读取的文件名111。