我有一个文件路径。
/ifshk5/BC_IP/PROJECT/T11073/T11073_RICekkR/Fq/AS34_59329/111220_I631_FCC0E5EACXX_L4_RICwdsRSYHSD11-2-IPAAPEK-93_1.fq.gz
我想得到这部分
/T11073_RICekkR/Fq/AS34_59329
作为$location
.
我怎样才能sed
得到那些?
使用文件路径时,我发现使用起来更容易awk
- 但你可以自己决定。这是我要做的:
location=$(echo "$path" | awk -F "/" '{ print "", $6, $7, $8 }' OFS="/")
如果您尝试匹配模式,那么sed
将是一个不错的选择。但是你没有提到任何规格。
使用cut
或awk
(按照建议)。
但是要和sed
你一起做这样的事情:
locationpath=/ifshk5/BC_IP/PROJECT/T11073/T11073_RICekkR/Fq/AS34_59329/111220_I631_FCC0E5EACXX_L4_RICwdsRSYHSD11-2-IPAAPEK-93_1.fq.gz
location=$(echo $locationpath | sed 's%\(/[^/]*\)\{4\}\(/[^/]*/[^/]*/[^/]*\).*%\2%')