服务器 linux环境下,在.bashrc中export且source后,仍报错:No such file or directory: ‘***‘
已有操作在.bashrc中export且sourcevim ~/.bashrc打开.bashrc后键盘输入“E”表示编辑文件,并把光标移动到文件的最后,在最后一行插入export BERT_BASE_DIR=/home/your_dir/file_folder_name/按下esc键之后输入“:wq!” 表示保存且退出。其中“your_dir”表示一系列路径,“file_folder_name”表
1. 已有操作
在.bashrc中export且source
vim ~/.bashrc
打开.bashrc后键盘输入“E”表示编辑文件,并把光标移动到文件的最后,在最后一行插入
export BERT_BASE_DIR=/home/your_dir/file_folder_name/
按下esc键之后输入“:wq!” 表示保存且退出。
其中“your_dir”表示一系列路径,“file_folder_name”表示对应的文件夹名称,这两个字符串在每个人的服务器上是不同的。
然后执行
source ~/.bashrc
按道理,这样以后就可以使用“BERT_BASE_DIR”来代替文件夹“file_folder_name”的绝对路径“/home/your_dir/file_folder_name/”了。
然而我在使用“BERT_BASE_DIR”时报错了。
2. 报错
执行以下命令
pytorch_pretrained_bert convert_tf_checkpoint_to_pytorch BERT_BASE_DIR/bert_model.ckpt /home/hanjie/FewShotTagging/uncased_L-12_H-768_A-12/bert_config.json BERT_BASE_DIR/pytorch_model.bin
这里使用到了.bashrc文件中export的内容:“BERT_BASE_DIR”,在我反复执行该命令时,结果报出两种错误,有时是:
No such file or directory: 'BERT_BASE_DIR/bert_config.json'
有时是:
Unsuccessful TensorSliceReader constructor: Failed to find any matching files for /home/hanjie/BERT_BASE_DIR/bert_model.ckpt
3. 解决
将命令中的“BERT_BASE_DIR”替换成绝对路径就可以执行成功,即运行以下命令可以成功。
pytorch_pretrained_bert convert_tf_checkpoint_to_pytorch /home/hanjie/FewShotTagging/uncased_L-12_H-768_A-12/bert_model.ckpt /home/hanjie/FewShotTagging/uncased_L-12_H-768_A-12/bert_config.json /home/hanjie/FewShotTagging/uncased_L-12_H-768_A-12/pytorch_model.bin
这样看来,使用“BERT_BASE_DIR”来代替文件夹“file_folder_name”的绝对路径“/home/your_dir/file_folder_name/”是不可以的,但我也不知道已经export和source过了,为什么还不可以。
4. 更正
由于我的疏忽,在执行命令时忘记加“$”符号了,正确的输入应为:
pytorch_pretrained_bert convert_tf_checkpoint_to_pytorch $BERT_BASE_DIR/bert_model.ckpt $BERT_BASE_DIR/bert_config.json $BERT_BASE_DIR/pytorch_model.bin
更多推荐
所有评论(0)