Linux 从右侧提取两个/之间的字符串
从右侧提取两个/之间的字符串 命令准备: 输入:-[目录名称不是常量] 示例1:-Linux 从右侧提取两个/之间的字符串,linux,bash,awk,sed,scripting,Linux,Bash,Awk,Sed,Scripting,从右侧提取两个/之间的字符串 命令准备: 输入:-[目录名称不是常量] 示例1:- /dir1/dir2/ /dir1/dir2/dir3/dir4/ nohup dsmc arch /dir1/dir2/ -subdir=yes > /tsm/backuplogs/dir2_`date +%d%m%y_%H_%M`.log & nohup dsmc arch /dir1/dir2/dir3/dir4/ -subdir=yes > /tsm/backuplogs/dir
/dir1/dir2/
/dir1/dir2/dir3/dir4/
nohup dsmc arch /dir1/dir2/ -subdir=yes > /tsm/backuplogs/dir2_`date +%d%m%y_%H_%M`.log &
nohup dsmc arch /dir1/dir2/dir3/dir4/ -subdir=yes > /tsm/backuplogs/dir4_`date +%d%m%y_%H_%M`.log &
示例2:-
/dir1/dir2/
/dir1/dir2/dir3/dir4/
nohup dsmc arch /dir1/dir2/ -subdir=yes > /tsm/backuplogs/dir2_`date +%d%m%y_%H_%M`.log &
nohup dsmc arch /dir1/dir2/dir3/dir4/ -subdir=yes > /tsm/backuplogs/dir4_`date +%d%m%y_%H_%M`.log &
我希望输出如下
示例1输出:-
/dir1/dir2/
/dir1/dir2/dir3/dir4/
nohup dsmc arch /dir1/dir2/ -subdir=yes > /tsm/backuplogs/dir2_`date +%d%m%y_%H_%M`.log &
nohup dsmc arch /dir1/dir2/dir3/dir4/ -subdir=yes > /tsm/backuplogs/dir4_`date +%d%m%y_%H_%M`.log &
示例2输出:-
/dir1/dir2/
/dir1/dir2/dir3/dir4/
nohup dsmc arch /dir1/dir2/ -subdir=yes > /tsm/backuplogs/dir2_`date +%d%m%y_%H_%M`.log &
nohup dsmc arch /dir1/dir2/dir3/dir4/ -subdir=yes > /tsm/backuplogs/dir4_`date +%d%m%y_%H_%M`.log &
使用
basename
程序从路径中提取最后一个目录,如下所示:
上述行将输出:
尝试以下操作以提取子字符串:
basename /dir1/dir2/dir3/dir4/
输出:
dir4
输出
dir4
dir4
您应该避免使用旧的和不推荐使用的back tics,请使用以下括号:
\u\$(日期+%d%m%y\u%H\u%m\)。log