我们有一个字符串:|-----ssss
。
我需要这样做:'s/.\//|--/;s/\//-/g;s/-[^\-]*-/--/g;'
所以我用sed写了一个脚本:sed -r -e sed -r -e 's/.\//|--/;s/\//-/g;'
通过此正则表达式|--dfsgfd-dfs-as-ssss
,我得到了:s/-[^\-]*-/--/g;
。
现在我需要删除 - 和 - 之间的所有字符。我怎样才能做到这一点?这个正则表达式做得不好:{{1}}。
谢谢!
答案 0 :(得分:0)
如果我理解正确:
/
-
|-
许多可能的解决方案之一
str='./dfsgfd/dfs/as/ssss'
out="|-$( sed 's:[^/]::g;s:/:-:g' <<<"${str%/*}/" )${str##*/}"
echo "$out"
输出
|-----ssss
来自:str='./a/b/c/d/e/f/g/i/jjj'
|----------jjj