工作中用到的linux命令就会记一下,主要是自用,不一定全,会持续补充。
对文件/文件夹操作
- 复制文件:
cp 文件名 文件夹
- 复制文件夹:
如果目标目录dir2不存在,可以直接使用
cp -r dir1 dir2
(创建2把1的内容复制进2)
如果dir2已存在,则需要使用
cp -r dir1/* dir2
如果这时使用cp -r dir1 dir2(把文件夹1复制进2里面),则也会将dir1目录复制到dir2
(-r表示递归持续复制/删除) - 删除:
rm –f
,删非空文件夹用rm –rf
后面跟多个文件/文件夹名字就可以一次性删除多个 - 改名字:
mv test TEST
(名字改成TEST) - 移动:
mv test /TEST/
(文件/文件夹移动到TEST里) - 可视化当前文件夹
nautilus .
可视化指定文件夹nautilus /home/test
(举例) - 文件/文件夹之间的连接
ln默认硬连接
ln –s flie1 flie2
是建立一个到f1的软连接,效果是f2->f1,两个file的路径要用绝对路径 gvim -On fileA fileB fileC
可以在同一页面中打开多个文件- 查看当前目录剩余空间
df -h .
- 查看当前目录下文件/目录的大小
du -sh *
。*
指所有目录,如果只要查询某个目录 替换掉*
即可
搜索:
- find(find path expression)
指定目录:find /path -name filename
(可以前后加*扩大范围)
当前目录:find . –name filename
根目录:find / -name fliename
用 -iname 可忽略大小写
还可以按文件特征查找,用到了再说,具体可参考 - grep,根据文件的内容进行查找,会对文件的每一行按照给定的模式(patter)进行匹配查找
我目前常用grep -r fliename
,用于查找那些文件例化/定义了这个名字的module
PS:如果要在文件中查找一个module在哪里定义的,假设叫test_top,直接搜greb –r test_top
,不用加.v后缀,因为定义这个module的.v文件不一定叫一样的名字
PS2:grep搜索也可以用通配符*,但最近发现好像只能加在需搜索的字符串末尾,加在中间和前面不行,不知道是我这边系统的问题还是这个命令本身的规定。可以使用别的方式替代。用中括号匹配一个字符[],[0-9]表示数字,[Aa]表示a或者A,[A-Za-z]表示字母等,也可以组合使用。
例如grep -r [0-3]reset_fifio[a-z]
载入工具
module av
命令可以查看可载入的工具
比如coreConsultant所需要的工具是synopsys/coretools_vO-2018.09-SP2-1- 用
module load XXX
命令载入具体工具 - 用
module unload
可以卸载 - 用beyond compare工具可以对比文件和文件夹内容(需load后使用)
例如:
比较两个文件:bcompare file1.v file2.v
比较两个文件夹:bcompare folder1 folder2
补充一个bcompare常用操作:比较两个文件夹时,ctrl+A全选后右键选择compare content,可以对比哪些具体文件有不同。双击具体文件可看到文件内容对比。此时全选想要的版本,选择界面上方的copy
,可以将旧版内容一件替换为新版,改完退出前记得保存。
其他
- 查看pdf(一般默认安装有文件阅读器Evince)
evince fliename.pdf
- 打开.xlsx文件(这是Microsoft Excel的文件格式)
libreoffice filename.xlsx
没有安装LibreOffice的话需要先安装 - 显示当前目录的绝对路径:
pwd
全称是print working directory
几个LSF作业管理系统常用命令
bsub -ls -q qname
其中-q qname
表示提交到队列,-ls
表示提交一个批量的交互式作业。在此交互式作业执行完成或终止前,不能提交新的作业。将该作业的标准输出(或标准错误)发送至终端bsub -m hname
表示提交到一个或多个主机,或一个主机组。可以使用关键字“all”和“others”bjobs
命令可查看自己的jobbjobs -l <jobid>
可查看job细节
快捷键
- ctrl+H可以显示和隐藏(隐藏文件)
- ctrl+shift+t可以在一个窗口中打开多个终端
- ctrl+L可以清空终端
- ctrl+A,将光标移动到命令行行首(A-ahead),ctrl+E是移动到行尾(E-end)