从右边提取两个/之间的字符串
命令准备:
输入:- [目录名称不固定]
示例 1:-
/dir1/dir2/
示例 2:-
/dir1/dir2/dir3/dir4/
我想要如下输出
示例 1 输出:-
nohup dsmc arch /dir1/dir2/ -subdir=yes > /tsm/backuplogs/dir2_`date +%d%m%y_%H_%M`.log &
示例 2 输出:-
nohup dsmc arch /dir1/dir2/dir3/dir4/ -subdir=yes > /tsm/backuplogs/dir4_`date +%d%m%y_%H_%M`.log &
最佳答案
试试这个来提取子字符串:
basename /dir1/dir2/dir3/dir4/
输出:
dir4
With bash builtin commands:
string="/dir1/dir2/dir3/dir4/"
string="${string%/*}" # remove trailing /
echo "${string##*/}" # remove /dir1/dir2/dir3/
输出
dir4
关于linux - 从右边提取两个/之间的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29092293/