Learn VASP The Hard Way (Ex28):进阶前的准备(一)

2017-07-25


Ex28 进阶前的准备(一)

Linux命令之cd使用心得: 科研狗必备技能




前面27节,我们已经通过气相分子的例子,带领大家顺利度过了菜鸟这一关。如果你掌握了其中的思想,勤加操练,看官网,认真阅读看大师兄推荐的参考书,相信你的能力足以甩出那些整天只知道搜集VASP学习资料,搜集DFT阅读书籍,而不去行动的人好几条街了。科研忌讳的就是眼高手低,你学到的知识和你下载的书成反比。

 

在菜鸟篇结束之后,大师兄需要把自己日常工作的一些小技巧展示给大家。一是作为大家摆脱菜鸟身份的奖励,二来为大家的进阶篇做好准备。今天我们主要讲解一下cd命令。


linux系统下,cd是必不可少的一个命令: cd 可以实现进入文件夹,返回上一级文件夹等操作等,日常操作中一些简单的做法可以极大的简化我们的工作方式,减轻手指的负担,有效避免键盘手的形成。大师兄结合自己多年来理论计算化学的操作实践,简单列举了一些组合使用 cd 命令的方法,希望大家可以熟练使用。

 

注意:本节没有大师兄的截图操作,大家需要认真练习,思考这些命令是怎么运行的。希望大家阅读完本文后,按照内容练习一番,至少要达到高级篇的水平。此外,本节内容和前面的密切相关,如果前面没有掌握的话,在具体的应用部分中阅读起来会有些吃力。此时,建议从头学习。

 



1  菜鸟篇: 正常使用  cd 命令


进入文件夹: cd  xxx/xxx/xxx

返回上一级: cd ..

返回上二级:cd ../..

 



2   初出茅庐: 懂得如何快速返回原来的文件夹目录 


1    cd  -   

2   cd  $OLDPWD


两者效果是一样的,区别是前者会在屏幕显示上一级的目录。

具体使用参见本书前面几节关于VASP批量操作的相关内容,尤其是在批量提交任务中的应用。这个命令一定一定一定要掌掌掌掌...握!!!

 



进阶篇: 知道如何结合 cd  alias


试想一下,如果你的文件系统下,一层套一层,好东西藏的很深(大师兄内心荡漾着邪恶清脆的笑声),问题是,当你进入这个文件夹,后退时需要不停地敲击: cd ../../../../../../../.....................   


为避免这样的麻烦,可以这么做:


alias ..='cd ../../'

alias ...='cd ../../../'

alias ....='cd ../../../..'


每个点代表向上返1级目录,后面自己补上,大师兄手指头不想继续写了。

注意:

1)不要设置  alias .='cd ../'  因为 . linux里面等于 source 命令

2):等号左右没有空格

3):等号右侧命令需要用单引号或者双引号括起来, 最好是用单引号。

 

不会的请自己查找前面关于alias的介绍章节。 




高级篇: cd  aliasls的结合


大师兄linux走火入魔,养成了一个进入文件夹就敲击 ls  命令的习惯,但是也舍不得折磨我那双精细的老手,于是,就组合了cdalias&、和ls 命令,如下

alias ....='cd ../../../.. && ls' 

 

这样你敲击4个点 ....  返回上面4级目录的时候, 自动显示当前目录下的所有东西,避免再一次敲击ls 命令了

 

在这里我们用到的是 && 这个命令,它表示如果前面的命令成功了就进行 && 的命令

 

无聊的师弟师妹们可以这样玩一下: cd ../../../.. && cd -  

 

但是如果 && 前面的命令失败了,直接退出,后面的便不会运行,这种情况下你就需要用到  双排管 这个命令了。


什么是双排管? 答: || (中间没有空格,大师兄给起的名字)

 

师兄,这玩意怎么使用? 看下面的例子就明白了:

 

cd ../abc && ls  

上一级目录没有abc文件夹,&& 前面命令的失败了,ls 不会运行


cd ../abc || ls  

上一级目录没有abc文件夹, ||  前面命令的失败了,ls依然会运行

 

此外,还有单管 |  pipe)这个 命令,后面一般跟着前面一步结束的进一步操作。比如:


1)  head –n 10 POSCAR | tail –n 1

2)  grep '  without'  OUTCAR | tail  -n 1

3)  grep '  without'  OUTCAR | awk '{print $4}'

4)  前面获取零点能的就是一个很好的例子

5)  ……(大家自由发挥)

 

5  cd 私人定制篇:


如果你的一个课题的计算都在一个文件夹里面,可以这么设置,下次敲击命令时直接进入这个文件夹


alias xxx='cd ~/bigbro/a/b/c/d/e/f/g/h/i/k'

 

藏得这么深(师弟们懂的!),肯定是好东西,不拿出来分享愧对大师兄谆谆教诲!学会了这个命令,就避免了用鼠标乱点进入目录了。还可以避免文件找不到....

 

大家好好练习这些关于cd的基本命令,等手指头熟悉了cd的味道,大师兄下一节就会继续传授给大家其他的高级操作,进一步减轻手指头的负担。



如有错误,疑问,或者建议,请发邮件联系大师兄: qli@bigbrosci.com

给大师兄留言:QQ号(2674006510)  微信: BigBroSci

加入大师兄QQ群:遇见大师兄 217821116 (先根据群公告修改群名片,若不修改,一经发现,立即踢出。

如果你有自己的科研经验和心得,也欢迎分享给大家!

此外,QQ群专注于科研思维的碰撞与科研生活的分享,本书中已经详细解释或者指明的易出错部分,不建议在群中继续咨询,请大家认真学习并主动积极地去思考和练习。


如果喜欢大师兄的文章,欢迎关注我们,转载,转发。

打赏一下,鼓励大师兄们写出更好的文章!


本网站由阿里云提供云计算及安全服务