String 带和不带子IRS的路径拆分字符串
如果在后面/不同,如何拆分此字符串 我有这样的途径:String 带和不带子IRS的路径拆分字符串,string,bash,variables,split,sh,String,Bash,Variables,Split,Sh,如果在后面/不同,如何拆分此字符串 我有这样的途径: /HDD1/Movies/Excursion.2016/ /HDD1/Movies/Excursion.2016/name1 /HDD1/Movies/Excursion.2016/name2 /HDD1/Movies/Excursion.2016/name3 我的剧本: d=/HDD1/Movies/Excursion.2016/ dname=${d#/*/} dname=${dname%/*} echo $dname 输出:2016年
/HDD1/Movies/Excursion.2016/
/HDD1/Movies/Excursion.2016/name1
/HDD1/Movies/Excursion.2016/name2
/HDD1/Movies/Excursion.2016/name3
我的剧本:
d=/HDD1/Movies/Excursion.2016/
dname=${d#/*/}
dname=${dname%/*}
echo $dname
输出:2016年电影/游览
d=/HDD1/Movies/Excursion.2016/name1
dname=${d#/*/}
dname=${dname%/*}
echo $dname
输出:2016年电影/游览
d=/HDD1/Movies/Excursion.2016/name1
dname=${d#/*/}
dname=${dname%/*}
echo $dname
我总是想要一切/电影/
例如:
d=/HDD1/Movies/Excursion.2016/
output : Excursion.2016
d=/HDD1/Movies/Excursion.2016/name1
output : Excursion.2016/name1
d=/HDD1/Movies/Excursion.2016/name2
output : Excursion.2016/name2
尝试以下操作(警告,使用了特定于bash的语法):
再添加一个
%
:dname=${dname%%/*}
so dname=${dname%%/*}其输出:Movies,dir Movies在脚本中也可以是不同的,目录是硬编码的,那么它怎么会不同呢?请详细描述一下您的预期用途。我无法设置main_dir main_dir=/HDD1/Movies,只有HDD1无法设置为main_dir。dir Movies muss ChangeableI修改了建议的解决方案,使/HDD1之后的一级目录“浮动”(忽略)。如果您想了解有关所使用的bash语法(带模式匹配的条件[[])的更多信息,请发表评论。