[relion]Autopick:ERROR: Cannot read file stack_0001_cor_DW.mrc It does not exist解决办法

[relion]Autopick:ERROR: Cannot read file stack_0001_cor_DW.mrc It does not exist解决方法

错误原因:产生该问题原因不明,但导致该错误的直接原因是Autopick模块找不到.mrc文件所在的位置

解决方法

解决问题的思路为在头文件中给所有.mrc文件添加绝对路径

1-打开导入的.star文件显示信息如下(以前三行开头为例)

loop_
_rlnMicrographName #1
_rlnCtfImage #2
_rlnDefocusU #3
_rlnDefocusV #4
_rlnDefocusAngle #5
_rlnCtfFigureOfMerit #6
_rlnFinalResolution #7
_rlnOpticsGroup #8
stack_0001_cor_DW.mrc
stack_0002_cor_DW.mrc
stack_0003_cor_DW.mrc

2-使用sed命令改写.star文件,在每个文件名前加上其绝对路径,使用命令如下

sed -i 's!stack!/###/###/&!' test.star
#在stack前添加绝对路径

3-打开的test.star文件检查运行结果,显示信息如下

loop_
_rlnMicrographName #1
_rlnCtfImage #2
_rlnDefocusU #3
_rlnDefocusV #4
_rlnDefocusAngle #5
_rlnCtfFigureOfMerit #6
_rlnFinalResolution #7
_rlnOpticsGroup #8
/###/###/stack_0001_cor_DW.mrc
/###/###/stack_0002_cor_DW.mrc
/###/###/stack_0003_cor_DW.mrc

4-导入修改后的.star文件即可正常运行

补充说明

#代码标准用法示例
sed -i 's/文件中的目标文字/要增加的字符串&/' 文件名

sed Linux sed命令可依照脚本的指令来处理、编辑文本文件

-i 加上该选项后可直接修改文件内容

分隔符,原本使用/作为分隔符,但是当要替换的字符串当中包含/时,则使用!或者|作为分隔符。否则会报如下错误

sed: -e expression #1, char 13: unknown option to `s’

注意不要忘记添加结尾的分隔符。否则会报如下错误

sed: -e expression #1, char 7: unterminated `s’ command

& 在要增加的字符串后加上&,意为将字符串添加在目标文字的前面

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值