【发布时间】:2018-05-07 23:24:09
【问题描述】:
尝试将“/data/kollman/appion/*/relion/micrographs”替换为“micrographs”
sed -i 's/\/data\/kollman\/appion\/.*\/relion\/micrographs/micrographs/g' micrographs_all_gctf.star
每行需要两次更正。
/data/kollman/appion/17nov14d/relion/micrographs/00001_nonDW.mrc /data/kollman/appion/17nov14d/relion/micrographs/00001_nonDW.ctf:mrc 18326.289062 19408.296875 74.539665 120.000000 2.120000 0.200000 87500.000000 14.000000 -0.032973 3.656274
/data/kollman/appion/17nov14d/relion/micrographs/00002_nonDW.mrc /data/kollman/appion/17nov14d/relion/micrographs/00002_nonDW.ctf:mrc 19867.357422 20695.939453 48.760956 120.000000 2.120000 0.200000 87500.000000 14.000000 -0.034282 3.727132
需要变成这样:
micrographs/00001_nonDW.mrc micrographs/00001_nonDW.ctf:mrc 18326.289062 19408.296875 74.539665 120.000000 2.120000 0.200000 87500.000000 14.000000 -0.032973 3.656274
micrographs/00002_nonDW.mrc micrographs/00002_nonDW.ctf:mrc 19867.357422 20695.939453 48.760956 120.000000 2.120000 0.200000 87500.000000 14.000000 -0.034282 3.727132
但是,我得到的结果是这样的:
micrographs/00001_nonDW.ctf:mrc 18326.289062 19408.296875 74.539665 120.000000 2.120000 0.200000 87500.000000 14.000000 -0.032973 3.656274
micrographs/00002_nonDW.ctf:mrc 19867.357422 20695.939453 48.760956 120.000000 2.120000 0.200000 87500.000000 14.000000 -0.034282 3.727132
问题似乎是我在这里使用通配符的方式。我需要它,因为文件夹结构的那部分总是不同的,因为这个命令旨在推广到所有这样的文件夹结构。星号代表日期,它总是在变化。
无论如何,通配符会按预期替换日期,但看起来它一直延伸到日期之后并跨越到需要替换的第二个实例。结果是它在每一行删除了文件结构的一个条目。
【问题讨论】: