大多数人不会否认,Endnote是一个很好的文献管理软件,尤其对于用word写文章的人来说。我刚开始对它不怎么感冒,是因为我不知道它还可以输出为bibtex的格式,因为我工作在Linux下,用Latex写论文。后来终于知道了可以输出为bibtex格式,就对它产生了兴趣。然而我发现,转换后的bibtex文件,每条文献都没有Label,这就没法引用。手工一条一条加,可以,但不现实。到网上查别人是不是有办法,还真发现有人解决了这个问题。不过我还是喜欢自己动手,于是写了一个shell脚本,完成这种转换。怕忘了,就把从Endnote到BibTex的转换步骤写下来,以备后查:

1. 在Endnote的界面中,选择Edit->Output Styles->BibTex Export。如果没有BibTex Export,则先Edit->Output Styles->Open Style Mananger,找到Bibtex Export那一行,在前面的方框打上勾。另外此时还可以点击下面的Edit按钮,找到Bibliography-Templates,这里可以修改你要输出哪些信息,例如:作者,题目,刊物名称,卷号,页号,发表年份等等。这里最好修改一下,只输出自己需要的部分,不需要把全部信息都输出来。我们会发现,对于每类文献,第一个项目都是author,最后一个都是year。第一个项目和最后一个项目最好不要变。这样就可以利用我下面写的Linux脚本,给bibtex格式的参考文献添加Label。

2. 选择File->Export,输入你想输出的文件的名字,比如“ref_old.txt“。这时候,你会看到Output Style是BibTex Export。保存类型就选Text File(*.txt)。然后点保存。把这个文件ref_old.txt放到Linux操作系统的某个目录下。你会看到,这个文件里在每篇文献的“@article{”后是没有Label的。

3. 利用我所编写的shell脚本endnote_bibtex.sh,加上可执行属性,放到$PATH所包含的一个路径下,运行命令

endnote_bibtex.sh ref_old.txt

这时候,就会得到一个新的文件ref.bib。你会看到,这个文件里,每条参考文献都已经加上了Label了。

这里要说明一下,用我这个脚本得到的Label,由第一作者的姓、发表年和页号按“姓_年_页号”来构成。所以在你平时建立Endnote数据库的时候,一定要保证这三项是非空的,如果有一项是空的,转换为bibtex的时候就有可能出错。至于这三项是不是非空,你可以在Endnote Program分别按照这三个中的一个排序,如果是空的,会跑到最前面或者最后面,很快就能发现。如果哪一项空了,就补上。只要每条文献的这三项都是正确的,是肯定不会出错的。所以平时最好养成一个习惯,每导入一条文献,下面这些信息都要保证完整:作者、题目、杂志名称、卷号、页号和发表年。事实上,如果哪一条不完整,你在编辑latex文件的时候,也还要补充完整,还不如平时养成一个好习惯呢。

附件是我写的转换脚本。

这篇博文写完后,谢老师推荐了Mendeley这个文献管理软件。确实非常好用。只是在导出为bibtex的格式的时候,所有的信息全部导出来了,使得文件显得有点乱,label也不是我需要的。暂时还不知道如何只导出自己需要的信息。于是自己动手修改了上面的脚本,用于剔除一些不想要的信息。

转载本文请联系原作者获取授权,同时请注明本文来自郑小宏科学网博客。

收藏

分享

分享到:

linux 参考文献格式转化,科学网-Endnote向Bibtex格式的转换-郑小宏的博文相关推荐

  1. linux子系统安装gromacs,科学网—Windows下GROMACS程序的编译 - 李继存的博文

    2015-12-07 22:12:05 总的来说, Windows下的GROMACS程序用于模拟意义不大, 对于长时间的模拟, 我都是放在Linux服务器上进行的. 但将Windows下的GROMAC ...

  2. linux网络打印机安装步骤,科学网—CentOS6.5上使用cups安装网络打印机 - 王敏玲的博文...

    今天尝试了在centos6.5系统上安装打印机,网上的教程很复杂,下面总结一下自己的安装步骤(附了相应的界面截图): 1. 首先用yum intall cups 服务. 2. 使用netstat 查看 ...

  3. Endnote导出Bibtex格式自定义文献的“@article{ 后的标签

    Endnote导出Bibtex格式自定义文献的"@article{ 后的标签 将文献从Endnote导出Bibtex格式时候,希望自己定义自定义一个唯一标识符,以便在用latex排版论文时候 ...

  4. linux合并pdf命令,科学网—[转载]linux下利用命令行工具pdftk对PDF进行合并分割(转载) - 崔鹏碧的博文...

    pdftk是非常好用的PDF页面操作工具,能够切割.合并.提取指定页面等. 常用包括的功能如下:合并 PDF: 分割 PDF 页面: 旋转 PDF 页面: PDF 带密码访问: PDF 填加密码: 用 ...

  5. linux安装ld编译器,科学网—手动安装特定版本的gcc编译器 - 亓欣波的博文

    Linux发行版中一般预装了gcc编译器,版本随系统不同而不同,有时候不想用(或者是不能用)系统默认的gcc编译器,就需要自己编译特定版本的gcc编译器. 这里以在Ubuntu14.04环境(默认gc ...

  6. 在linux下运行qiime,科学网—QIIME2在Linux环境下使用遇到的问题 - 肖斌的博文

    1)qiime demux summarize --i-data demux.qza --o-visualization demux.qzv出现如下报错信息 解决方案2:由于个人是利用windows登 ...

  7. linux计算圆周率程序,科学网—[转载]关于Linux中使用bc命令计算圆周率(π):可以计算上千位或上万位,顺便评测CPU的计算能力 - 张成岗的博文...

    Posted on 2020-12-19 20:28  520_1351  阅读(149)  评论(0)  编辑  收藏 Linux系统中,我们可以安装bc计算器用来计算pi值(π圆周率) 在玩的同时 ...

  8. linux下 卸载qt_科学网-Bernese安装:Qt的安装与卸载-潘林的博文

    在安装Linux Bernese5.2时,需要先安装QT,我使用的是openSUSE,就下载了 qt-linux-opensource-5.0.2-x86-offline.run 的安装包,并进行了安 ...

  9. Linux系统设置手动ip,科学网—linux手动设置静态ip - 张志翔的博文

    电脑装的ubuntu 16.04, 所里的网络要设置内网静态ip,这个当然没有什么难的.但是因为办公室刚换过几台电脑,我的新电脑联有线之后,总是连上一个啥自动以太网,我把这个自动以太网里面的参数改成静 ...

最新文章

  1. 水平,垂直居中的15种方法
  2. ECMAScript+DOM+BOM
  3. 大厂架构师经验分享!成功跳槽字节跳动
  4. SpringBoot非官方教程 | 第三篇:SpringBoot用JdbcTemplates访问Mysql
  5. java框架mangedv,Spring集成JPA后,报“Not an managed type: class x.x.x
  6. 搜索日志文件的linux,linux日志查找
  7. python变量类型声明_python基础知识:变量的定义以及类型
  8. 【转】Hbase之shell命令的使用
  9. 解决Selenium Webdriver执行测试时,每个测试方法都打开一个浏览器窗口的问题
  10. Atitit 互操作之道 接口之道 attilax著
  11. Java Web 项目基于IDEA的增量补丁打包插件
  12. Typora怎么插入图片链接,并设置图片居中
  13. CUDA11.7安装-C盘杀手(含卸载和安装教程)
  14. Cannot open D:\Anaconda3\Scripts\pip-script.py 解决
  15. android 日历考勤管理,android studio中使用recyclerview制作个显示考勤打卡的日历来...
  16. AngularJS博友的笔记教程
  17. go 字符串分割数组
  18. Android开发中的WMS详细解析
  19. 信息与通信工程——重要国际学术会议和国际顶级期刊(仅供参考)
  20. 英语语法---限定词详解

热门文章

  1. ARM、X86/Atom、MIPS、PowerPC
  2. 高端物理学名词_什么是物理高端备课?
  3. 7.9模拟比赛解题报告
  4. 端口映射工具之80端口映射软件无公网IP时发布网站应用等应用
  5. codevs 1227 方格取数2
  6. 太阳神电商业务辅助工具1.5
  7. 多渔:阿ken的故事
  8. 六个计算机硬件商标名称,10nm显卡可能有名字了,Intel悄悄申请全新商标!
  9. python中噪音是什么意思_Perlin噪声和Python的ctypes
  10. 2022国赛正式题nfs 解题