摘要:Linux命令极简教程:本教程为Linux新手而写,通过学习可以掌握在Linux下进行Gaussian安装与使用所必须的最基础知识shell命令。虽然不能用来代替Linux的基础学习课程,但是了解了这些,可以让您有自学Linux的基本能力并知道如何获取帮助,本文的目的即在于此。
作者:肖高铿/2016-05-12
一. 前言
有人问:“能不能直接教我怎么在linux下用Gaussian,而不要教我linux怎么用?” 这个问题就像如何直接吃最后一个包子就饱一样,是没有办法做到的。但是,可以学习最少的知识让你够在linux下提交一个gaussian作业,本文的目的即在于此。
本文的另一个目的是推广linux,希望更多的人可以实现快速的linux入门。无论是基于结构的分子对接虚拟筛选,还是用Guassian进行量子化学计算都需要用到高性能计算。而高性能计算通常在Linux系统下完成,因而有必要对linux常用命令有所了解,至少可以实现重复别人的操作、看懂或简单修改别人的脚本。
二. Linux的shell与terminal
1 shell与terminal
shell是个程序,它负责从键盘接受命令、提交给系统去运行。常用的shell有bash、tcsh、csh、ksh以及zsh。terminal(终端)也是一个程序,它打开一个窗口,让人与shell可以进行交互通讯。你的linux或mac操作系统肯定有个菜单可以让你打开一个terminal,你从程序的菜单里找,一般会找到一个terminal模样的东西,点开就是。
2 打开一个终端
一个terminal打开之后,你会看到自己的用户名,以及机器的名称,后面接着是个美元符($),就像下面的这个样子。
[gkxiao@master ~]$
这个就是终端,在这里,你可以用键盘随便敲些东西,再键入回车键,系统就会去执行你随便敲的东西了。
[gkxiao@master ~]$ kdkjflajfks
正常情况下,系统会告诉你:命令行找不到。就如下面的提示一样:
[gkxiao@master ~]$ kdkjflajfks
bash: kdkjflajfks: command not found
我们现在的任务就是:学习一些极少的命令,让你能够执行一个gaussian 09计算。
[gkxiao@master ~]$ |
[gkxiao@master ~]$ cd ~/demo
[gkxiao@master demo]$ export g09root=/home/me
[gkxiao@master demo]$ . $g09root/g09/bsd/g09.profile
[gkxiao@master demo]$ nohup $g09root/g09/g09 demo.com &
[gkxiao@master demo]$ |
三. 常用命令
在第二节,我们介绍了如何打开一个终端,并且知道,要想让linux干活,我们需要从终端输入命令,本节开始学习最常见的命令以完成一些特定的任务。
1. 文件系统
文件在linux系统里是按一套层级目录结构来组织,这意味着文件以树型的目录(windows下称为文件夹)形式进行组织,文件存在于目录中,目录中还可以有其它目录。
最顶层的那个目录是根目录(root,用“/”表示),root目录含有很多文件与子目录,而子目录又含有很多文件与子目录,一层一层套下去。
2. 查询当前目录:pwd
既然我们文件系统是个树形结构,那么在终端那个光标是位于文件系统的什么位置呢?pwd命令可以回答你的问题,只需键入pwd,再按回车键就可以了。实际上pwd的功能就是告诉你当前工作目录的名字。
[gkxiao@master ~]$ pwd
/home/me
你可能会想知道,我当前这个目录下有什么文件或子目录,这就需要用到命令“ls”。
3. 列出文件与目录:ls
Desktop Xrootenv.0 linuxcmd
GNUstep bin nedit.rpm
GUILG00.GZ hitni123.jpg nsmail
我们之后会经常用到ls命令,有很多的机会用到他。
4. 目录切换:cd
cd命令可以让你在目录树的不同目录间切换工作目录。切换工作目录非常简单:键入cd与工作目录路径即可:
1 | cd /pathname_to_working_directory/working_directory |
路径名有两种:绝对路径,相对路径。我们先来看看绝对路径,绝对路径从根目录“/”开始写起,接着写树形分支,一直写到你需要的那个目录。举个例子,在linux系统里,几乎绝大部分的程序都安装在根目录下的usr子目录里的bin子目录,用绝对路径表示为:/usr/bin。
假设我们现在要从当前位置切换到上面的/usr/bin目录,你可以试试下面的命令:
[gkxiao@master bin]$ pwd
/usr/bin
[gkxiao@master bin]$ ls
[ lwp-request
2to3 lwp-rget
2to3-2.6 lxterm
a2p lz
aalib-config lzcat
aconnect lzma
acpi_fakekey lzmadec
acpi_listen lzmainfo
add-apt-repository m17n-db
addpart magnifier
and many more...
你现在已经注意到:我们成功地切换到了当前工作目录/usr/bin,并且列出了当前共走目录里的文件与子目录。你也许注意命令行提示符有所变化,现在是[gkxiao@master bin]而不是[gkxiao@master ~]。
绝对路径从根目录一直到目标目录,而相对路径从任意工作目录开始,经常会用到有两个特殊字符:”.” (点)与”..”(点 点)。 “.”(点)是指当前工作目录本身,而”..”(点 点)是指当前目录的父目录(上一级目录)。
5. 绝对路径与相对路径
我们再将当前工作目录切换为/usr/bin:
[gkxiao@master ~]$ cd /usr/bin
[gkxiao@master bin]$ pwd
/usr/bin
那我们现在将工作目录从/usr/bin切换到其父目录/usr。有两种方式,先试试绝对路径:
[gkxiao@master bin]$ cd /usr
[gkxiao@master usr]$ pwd
/usr
还可以试试相对路径:
[gkxiao@master bin]$ cd ..
[gkxiao@master usr]$ pwd
/usr
两种不同方法,结果完全一样。我们该用哪一种,当然是打字少的哪一种!
同样,我们也可以用两种不同的方式从工作目录/usr切换到/usr/bin。先试试绝对路径方式:
[gkxiao@master usr]$ cd /usr/bin
[gkxiao@master bin]$ pwd
/usr/bin
或者,用相对路径:
[gkxiao@master usr]$ cd ./bin
[gkxiao@master bin]$ pwd
/usr/bin
有件重要的事:大部分情况下,可以将”./”省略。键入如下命令:
[gkxiao@master usr]$ cd bin
你会发现,确实得到同样的结果。总的来说,如果你什么都不做,那就是指当前工作目录。当然也有例外,我们马上会讲到。
6. 几个特殊的目录切换
如果你只键入cd而不跟随任何东西,那么cd将会切换到你的家目录。如果键入cd ~user_name,将切换到用户名为user_name的家目录。键入cd – 将切换到前一个家目录。键入cd ~,也是切换到家目录,实际上“~”就是指家目录。
7. 新建目录
到目前为止,我们学习了cd, ls, pwd等几个命令。你会注意到,这个几个命令使用时有一个共同的使用格式,那就是:
命令[空格]参数
常见的任务基本上都能找到对应的命令来完成。新建一个目录、并切换到该目录是一个常见的操作,比如,在一个新目录里执行一个gaussian的优化计算。
新建目录对应的命令是mkdir,假设我们要切换到家目录、并在家目录里新建一个子目录demo,然后将当前工作目录切换为demo目录:
[gkxiao@master usr]$ cd ~
[gkxiao@master ~]$ mkdir demo
[gkxiao@master ~]$ cd demo
[gkxiao@master demo]$ pwd
/home/me/demo
8. 文件与目录的复制
文件与目录的复制用命令cp,复制文件的命令格式如下:
1 | cp [源文件] [目标文件] |
复制目录的命令格式如下:
1 | cp -r [源目录] [目标目录] |
比如,要将/proc/cpuinfo这个文件复制到/home/me/demo这个目录里,并保存为cpuinfo:
[gkxiao@master demo]$ cp /proc/cpucinfo /home/me/demo/cpuinfo
你也可以将/proc/cpuinfo这个文件另存为/home/me/demo这个目录里的文件saveas.txt:
[gkxiao@master demo]$ cp /proc/cpucinfo ~/demo/saveas.txt
你现在可以切换到上面的demo目录里看看,是不是多了两个文件,希望你还能记得刚才学过的命令:
1 | cd ~/demo |
1 | ls |
或者直接ls一下demo目录:
1 | ls ~/demo |
9. 文件与目录的删除:rm
删除一个文件:
1 | rm [file name] |
删除目录:
1 | rm -r [target directory] |
比如,我们将家目录下的demo目录复制为demo1,然后删除demo1目录里的saveas.txt文件:
1 | cp -r ~/demo ~/demo1 |
1 | rm ~/demo/saveas.txt |
现在要将demo1目录删除:
1 | rm -fr ~/demo1 |
10. Gaussian计算平台相关的命令
Gaussian软件采购首先要知道CPU的型号:是AMD还是Intel? 采用命令:
1 | grep 'model name' /proc/cpuinfo |uniq |
获得如下输出:
1 | model name : Intel(R) Xeon(R) CPU E5-2650 v2 @ 2.60GHz |
这可以清楚的知道,该计算平台为Intel CPU。
此外Gaussian 09采购之前还需要知道自己的机器是否支持SSE4.2指令集、是否支持AVX指令集以便购买适合自己的机型的Gaussian。键入如下命令:
1 | grep -o -e sse4_2 -e avx -e sse4a /proc/cpuinfo |
- 如果什么都不出现或仅有空白行,则您的机器不能支持SSE4.2或AVX指令集,建议您购买Legacy版本;
- 如果包含有sse4_2或sse4a字眼而没有avx字眼,则建议您使用支持SSE4.2指令集的Gaussian版本;
- 如果包含有avx字眼(无论有无sse4_2或sse4a字眼),则建议您使用支持AVX指令集的Gaussian版本。
- 如果包含有avx2字眼,则建议您使用支持AVX2指令集的Gaussian版本。
11. 查询内核版本: uname -a
[gkxiao@master usr]$ uname -a
Linux molcalx.com.cn 3.2.0-29-generic #46-Ubuntu SMP Fri Jul 27 17:03:23 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux
x86_64字样表明该操作系统是64BIT的,如果买Gaussian软件,建议用64BIT的版本。另一个方法是:
[gkxiao@master usr]$ cat /proc/version
12. 查询操作系统发行版
UBUNTU系统可以用:
[gkxiao@master usr]$ lsb_release -a
比如,我的机器是这个结果:
1 2 3 4 5 | No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 12.04.5 LTS Release: 12.04 Codename: precise |
说明该操作系统发行版是Ubuntu 12.04.5,代号precise
其它发行版或者你的机器上可能没有这个命令,那么可以试试下面几个方法:
[gkxiao@master usr]$ cat /etc/issue
或者:
[gkxiao@master usr]$ cat /etc/centos-release
或者:
[gkxiao@master usr]$ cat /etc/redhat-release
13. 获取Mac地址
有的软件安装需要知道物理地址,或用物理地址生成license文件:
[gkxiao@master usr]$ ifconfig | grep eth0
eth0 Link encap:Ethernet HWaddr 00:18:3f:04:11:8a
其中00:18:3f:04:11:8a就是第一块网卡eth0的Mac地址。
想要了解全部的网络设备信息,键入:
[gkxiao@master usr]$ ifconfig
14. CPU类型查询
Gaussian软件采购前还需要知道CPU的类型,还是从cpuinfo里获取:
[gkxiao@master usr]$ grep name /proc/cpuinfo | uniq
model name : Intel(R) Xeon(R) CPU E5-2430 0 @ 2.20GHz
由此可见,刚才查询的机器的CPU是Intel XEON E5-2430。
15. 内存大小查询
1 | free |
free命令用来查询内存的状态,用h选项可以提高肉眼可读性:
1 | free -h |
16. 永不挂机
比如从笔记本等登录远程主机作业时,由于客户端经常由于某种原因被迫在作业结束前关机、断网等,这使得正在进行计算的作业被迫停止。如果希望在退出帐户、断网时该计算还不会结束,那么可以使用nohup命令。该命令可以在你退出帐户/关闭终端之后继续运行相应的进程。nohup就是永不挂机的意思( no hang up)。
nohup命令的一般形式为:nohup command &。比如,提交一个Gaussian作业demo.com:
1 | nohup g09 demo.com & |
其中&表示后台运行的意思。
17. 查看文本的倒数几行
一个Gaussian作业比如demo.log,想看末尾以便观察Gaussian是否正常运行结束,可以使用tail命令。
比如,查看Gaussian作业输出的最后一行:
1 | tail -1 demo.log |
正常结束的Gaussian文件会给出:
1 | Normal termination of Gaussian 09 at Sat May 28 12:32:35 2016. |
将1改成其它数字,则输出指定行数的文本内容,如果不指定行数,给出10行:
1 2 3 4 5 6 7 8 9 10 11 | $ tail demo.log 002863,0.00001605,0.00000279,-0.00002853,0.00004508,0.00003036,0.00000 140,-0.00000775,0.00006375,-0.00003913,-0.00005084,-0.00004926,0.00006 433,0.00000864,-0.00004499|||@ IF YOU'RE NOT PART OF THE SOLUTION, THEN YOU'RE PART OF THE PRECIPITATE. Job cpu time: 0 days 0 hours 12 minutes 30.0 seconds. File lengths (MBytes): RWF= 74 Int= 0 D2E= 0 Chk= 5 Scr= 1 Normal termination of Gaussian 09 at Sat May 28 12:32:35 2016. |
18. 查看文本
如果想快速的查看Gaussian结果文件, 可以用more,less命令。因为less支持前后翻页,所以推荐用less。
1 | less demo.log |
按字母q,退出more或less。
19. 设置环境变量
Gaussian软件,OpenEye软件等很多软件安装的时候需要设置环境变量。在Linux/Mac等Unix下,查看设置过什么环境变量:
1 | export |
将Gaussian 09安装在主目录(HOME目录)下,需要将环境变量g09root设置为HOME目录,使用export命令:
[user@linuxbox user]$ export g09root=~
安装Gaussian之后,将$g09root/g09添加到PATH环境变量里,可以简化Gaussian的命令,直接键入g09而无需输入环境变量,还是使用export:
1 | export PATH=$PATH:$g09root/g09 |
20. 开机自动加载环境变量
希望开机或下次登陆shell时自动将$g09root/g09加到PATH环境变量里,可以在HOME目录的.bashrc里设置需要的环境变量:
1 | vim .bashrc |
添加两行:
export g09root=~
export PATH=$PATH:$g09root/g09
这里,初学者有个常见的问题:为什么在我的电脑上看不到.bashrc这个文件,这是因为”.”开头的文件在视窗下是默认隐藏的文件。
21. 文件完整性校验
文件下载或拷来拷去,在这过程中文件是否有损坏呢或被人修改呢?Linux下,可以进行一个文件校验来检查文件的完整性。常用的校验方法有MD5,SHA1,GPG。以md5为例:
1 | md5sum foo.tar.gz |
会给出哈希值(MD5 Hash值),与文件发布者的Hash值比较,如果不同则表示文件被修改或不完整。
22. 我应该安装哪个包
有时候你使用软件的时候,提示你没有xxx.so.1之类的字眼,你需要知道这个文件由哪个包(软件、驱动)来提供,再去安装这个包就可以。你不需要百度、google或问任何人!你问电脑就可以。我用的操作系统是Centos,所以用yum来问:
1 | yum whatprovides libGLU.so.1 |
提示:
1 2 3 4 5 6 7 8 9 10 11 | Loaded plugins: fastestmirror, langpacks Loading mirror speeds from cached hostfile * base: mirrors.aliyun.com * epel: mirrors.ustc.edu.cn * extras: mirrors.aliyun.com * nux-dextop: mirror.li.nux.ro * updates: centos.ustc.edu.cn mesa-libGLU-9.0.0-4.el7.i686 : Mesa libGLU library Repo : base Matched from: Provides : libGLU.so.1 |
由此可见,libGLU.so.1在我的系统里,可以由mesa-libGLU-9.0.0-4.el7.i686来提供,只要安装这个包就可以。要安装这个包,还是用yum来安装:
1 | yum install mesa-libGLU-9.0.0-4.el7.i686 |
用ldconfig可以查询已经安装过的库文件,因此可以用来确认是否安装过libGLU.so.1:
1 | ldconfig -p |grep libGLU.so.1 |
根据输出很容易断定是否已经安装了。如果输出空白,则便是没有安装,反之相反。
23. ZINC数据库的下载
ZINC最新版本为ZINC15,下载地址为:http://zinc15.docking.org。ZINC数据库提供了cURL,powershell,wget等方式下载。
没有必要下载ZINC15的全库,可以根据自己的需求通过选项来控制下载化合物的特征,简要说明如下:
- 访问数据库
- 选择合适的理化性质
- 根据需要选择2D还是3D数据库
- 选择化合物的可获取方式
- 根据化合物特性下载
- 选择下载方法
- 下载数据库
访问ZINC15数据库:http://zinc15.docking.org,点击Tranches选项卡。
再分子量与logp的坐标上点击确认自己需要的分子量范围与logp范围(见示意图步骤1);
点击2D或3D,可以选择下载2D的SMILES还是3D的结构,见示意图步骤2,这个实际要再做其它选择之前做;
示意图第3步可以选择化合物的可获取状态:比如有库存、等等也可以。
示意图第4步可以选择化合物的类药、类先导、片段等特性;
示意图第5步可以选择下载脚本的类型。比如linux可以用curl或wget;windows可以用Powershell。选择一种下载方法即可。
假设你选择了wget,你会下载一个类似于”ZINC-downloader-2D-smi.wget”文件名的下载脚本,键入下面命令执行下载脚本:
1 | sh ZINC-downloader-2D-smi.wget |
注意:如果下载3D数据,硬盘一定要大!
24. LigandScout的安装
问:在Linux如何安装Ligandscout、并用序列号将软件激活,最后启用Ligandscout?
答:Ligandscout的Linux版本的安装文件类似于LigandScout_4_4_4_linux64_20200511.tar.gz,只要在安装目录里解压该文件即可。命令如下:
1 | tar -zvxf LigandScout_4_4_4_linux64_20200511.tar.gz |
解压之后,在安装目录下生成先的目录:ligandscout4。可以通过命令行用序列号将软件激活:
1 | <安装路径>/ligandscout4/ligandscout_activation -s <序列号> |
上面的”序列号”指你收到的序列号,当然,可以也可以在第一次启用Liganscout的时候在图形界面输入序列号。开启Ligandscout的图形界面:
1 | <安装路径>/ligandscout4/ligandscout |
25. 集群里一次向同一个节点提交多个独立的单核心或多核心作业
1 2 3 4 5 6 7 8 9 10 11 12 13 | #!/bin/bash #SBATCH -p 队列 #SBATCH -N 1 #SBATCH -n 24 cd 第一个作业的路径 srun -n 8 A.exe & sleep 20 cd 第二个作业的路径 srun -n 8 B.exe & sleep 20 cd 第三个作业的路径 srun -n 8 C.exe wait |
26. ssh与scp等自动输入密码
问题:需要批量用scp从云服务器下载文件,如何自动输入密码?
方案:使用expect自动输入密码。示例aa2ar_download.expect:
1 2 3 4 5 6 7 8 | #!/usr/bin/expect -f set password abcabc set timeout 300000 #download spawn scp gkxiao@88.181.258.200:/home/gkxiao/work/aa2ar.sdf.gz aa2ar/aa2ar.sdf.gz expect "gkxiao@88.181.258.200's password:" send "$password\r" expect eof |
然后在shell执行expect即可:
1 | expect aa2ar_download.expect |
27. Ubuntu安装32位程序兼容包
问题:UBUNTU 22等默认安装不兼容32位程序,导致执行一个32位程序会出现No such file or directory的错误。这个情况下,需要安装32BIT程序兼容包。
操作步骤:
1 2 3 | sudo apt-get update sudo apt-get install gcc-multilib sudo apt-get install lib32z1 |
28. 创建新的用户
用useradd新建一个用户,语法如下:
1 | useradd 选项 用户名 |
- -c comment 指定一段注释性描述。
- -d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。
- -g 用户组 指定用户所属的用户组。
- -G 用户组,用户组 指定用户所属的附加组。
- -s Shell文件 指定用户的登录Shell。
- -u 用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。
创建一个新用户gkxiao,并且设置主目录为/home/gkxiao:
1 | # useradd –d /home/gkxiao -m gkxiao |
新建了一个用户gkxiao,该用户的登录Shell是/bin/sh,该用户属于group用户组,同时又属于gaussian和root用户组,其中group用户组是其主组。
1 | # useradd -s /bin/sh -g group –G gaussian,root gkxiao |
29. 删除SDF文件里的性质数据
用sed删除所有的性质:
1 | sed '/<.*>/,+2d' actives_label.sdf > actives_notags.sdf |
用openbabel删除指定的性质分子量(MW):
1 | obabel -isdf actives_label.sdf -osdf -O actives_new.sdf --delete "MW" |
30. 拆分SDF文件
问:如何将一个SDF多分子文件分割为一个分子一个SDF文件?
答:首先预估该SDF文件的化合物数量,比如含有几万个分子,用csplit命令:
1 | csplit decoys_final.sdf /"\$\$\$\$"/ --suppress-matched --prefix=actives --suffix-format=%05d.sdf '{*}' |
则得到:actives00001.sdf,actives00002.sdf…等单分子文件。
31. 合并几个jpg文件为pdf
问:如何将多个jpg文件合并为一个PDF文件?
答:按图片出现的顺序,使用convert命令:
1 | convert doc_01.jpg doc_02.jpg doc_03.jpg doc_merged.pdf |
32. 用ChemScript将化学结构转化为IUPAC
问题:ChemOffice的Python API将化学结构转化为IUPAC名称
方法:安装好ChemOffice之后,打开python界面,键入下面的示例脚本:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | # Bring in python system and operating system modules from sys import * from os import * from os.path import * # Bring ChemScript into the Python program from ChemScript import * # create a molecule from smiles # Loratadine: https://pubchem.ncbi.nlm.nih.gov/compound/loratadin # 读入氯雷他定的SMILES化学结构 m = StructureData.LoadData('CCOC(=O)N1CCC(=C2C3=C(CCC4=C2N=CC=C4)C=C(C=C3)Cl)CC1', 'chemical/smiles') # 输出IUPAC名称 print(m.ChemicalName()) # 输出结果: ethyl 4-(8-chloro-5,6-dihydro-11H-benzo[5,6]cyclohepta[1,2-b]pyridin-11-ylidene)piperidine-1-carboxylate # 读如一个新的SMILES结构 m = StructureData.LoadData('C1CC[C@H]([C@@H](C1)CN2CCN(CC2)C3=NSC4=CC=CC=C43)CN5C(=O)[C@H]6[C@@H]7CC[C@@H](C7)[C@H]6C5=O', 'chemical/smiles') # 打印IUPAC名称: print(m.ChemicalName()) #结果 (3aR,4S,7R,7aS)-2-(((1R,2R)-2-((4-(benzo[d]isothiazol-3-yl)piperazin-1-yl)methyl)cyclohexyl)methyl)hexahydro-1H-4,7-methanoisoindole-1,3(2H)-dione |
如果要转化其它语言,比如汉语,需要标准的翻译工具,比如百度深度学习翻译:
1 | input='(3aR,4S,7R,7aS)-2-(((1R,2R)-2-((4-(benzo[d]isothiazol-3-yl)piperazin-1-yl)methyl)cyclohexyl)methyl)hexahydro-1H-4,7-methanoisoindole-1,3(2H)-dione' |
基础版翻译如下:
1 | (3aR,4S,7R,7aS)-2-(((1R,2R)-2-((4-(苯并[d]异噻唑-3-基)哌嗪-1-基)甲基)环己基)甲基)六氢-1H-4,7-甲烷异吲哚-1,3(2H)-二酮 |
基本是语言翻译明显痕迹,也许会存在不能满足中文化学命名风格的问题。
33. github加速
设置SOCKS5代理:
1 | git config --global http.https://github.com.proxy socks5://127.0.0.1:7070 |
取消代理:
1 | git config --global --unset http.https://github.com.proxy |
1 | git config --global http.proxy socks5://127.0.0.1:7070 |
取消代理:
1 | git config --global --unset http.proxy |
34. pip指定的数据源安装
比如,用清华大学镜像进行安装timesfm
1 | pip install -i https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple timesfm |
35. 目录同步
两台linux机器之间目录同步
1 | rsync -avz --progress local_directory user@remote_host:remote_directory |
四、如何获取帮助
借助bing(强烈推荐)等搜索引擎,你可以很容易获得实现一个任务需可以用什么命令,而命令无非就是由命令本身与参数组成。如果你知道了用什么命令,你可以用info或man来获得程序的使用文档,比如你不知道ls这个程序怎么用,你可以直接使用下面命令之一来实现:
1 | info ls |
或者:
1 | man ls |
五、linux命令注意事项
- Linux命令是大小写敏感的:“file”是不同于“File”的另一个文件。请在安装Gaussian或键入Gaussian命令的时候,大小写要分清;
- Linux文件系统里的文件没有文件扩展名的概念,所以不要以文件后缀来判断文档类型;Linux自身不关心文件扩展名,而应用程序可能会关心;
- 不要在文件名或目录的名称里使用空格,如果一定想用,建议使用下划线代替,你以后会感谢自己的;
- 文件与目录的名称仅使用:下划线(_),字母与数字组成
所以,Gaussian的作业文件,可以是test.com,test.gjf, test.txt或test.inp等。
五、我还要学些什么?可以开始使用gaussian了吗?
是的,还有很多命令你需要学习,但是你可以一边使用一边学习。我推荐教程:
当然,你可以开始使用Gaussian了,实际上Gaussian的安装与使用就是执行一系列命令:有的命令是来源于linux系统的,有的来源于Gaussian软件的,你要做的只是严格按照说明书的指令进行操作,虽然你可能还不懂有的命令到底是什么意思。重要的是,你可以举一反三,你知道如何从网络上找到帮助。
六、接下来可以做什么?
建议你试试安装Guassian,并跑一个作业吧:
Guassian 09的安装:http://blog.molcalx.com.cn/2016/03/31/gaussian-09-install.html