linux 在bash中向字符串中插入字符?

vfhzx4xs  于 2023-03-07  发布在  Linux
关注(0)|答案(2)|浏览(150)

我需要把字符串"125959"转换成"12:59:59"
显然,字符串是时间,所以正则表达式在这里不太好用。

omhiaaxx

omhiaaxx1#

time=125959
echo "${time:0:2}":"${time:2:2}":"${time:4:2}"
wlsrxk51

wlsrxk512#

我喜欢sed

time=125959
sed -e "s/\(..\)\(..\)\(..\)/\1:\2:\3/" <<< "$time"
  • 您可以通过将.替换为[[:digit:]]来对此进行优化
  • man bash(1)中阅读关于<<<(* 此处为字符串 *)

相关问题