小弟shell新手,求一截取字符串方法
/home/.../..../version/version_20131128100829.ini中的201311281008截取出来。
[解决办法]
没有其他要求?
#!/bin/bash
a="/home/.../..../version/version_20131128100829.ini"
echo ${a:31:45}
echo /home/.../..../version/version_20131128100829.ini
[解决办法]
sed 's/.*_//;s/....$//'
echo /home/.../..../version/version_20131128100829.ini
[解决办法]
sed -r 's/.*_//;s/[^0-9]+$//'
echo /home/.../..../version/version_20131128100829.ini
[解决办法]
sed -r 's/.*_([0-9]+).*/\1/'
echo /home/.../..../version/version_20131128100829.ini
[解决办法]
awk -F_ '{gsub(/[^0-9]/,"",$NF);print $NF}'
basename /home/.../..../version/version_20131128100829.ini
[解决办法]
cut -d "_" -f 2
[解决办法]
cut -d "." -f 1
str="/home/.../..../version/version_20131128100829.ini"; str=${str#*_}; echo ${str%.ini}