语言, 其他语言

Linux常用命令和超算中PBS常用命令

自己的Linux和PBS使用笔记,贴在这里。

一、Linux常用命令

1. 最常用

ls(英文全拼:list files):列出目录及文件名
ls -l:列出目录及文件名的详细信息
ls -a:可看的隐藏文件
ls -al:可看到隐藏文件和详细信息
cd(英文全拼:change directory):切换目录
cd .. :返回上一级
cd 文件夹名:进入某个文件夹
cd ../文件夹名:进入上一级目录中的某个文件夹
pwd(英文全拼:print work directory):显示目前的目录
mkdir 文件夹名(英文全拼:make directory):创建一个新的目录
rmdir 文件夹名(英文全拼:remove directory):删除一个空的目录
cp xxx xxx(英文全拼:copy file): 复制文件或目录
mv xxx xxx(英文全拼:move file): 移动文件或目录,或修改文件或目录的名称
rm(英文全拼:remove): 删除文件
rm -r 文件夹名:递归删除某目录
clear:清空terminal的所有内容(或者使用Ctrl+L)
tab按键:补充完整文件名或文件夹名

2. 次常用

vim/vi 某文件 (编辑文件)
nano 某文件 (编辑文件)
touch 文件 (新建空文件)
cat 某文件(连接文件并显示到标准输出设备上)
sudo -s (切换到root模式)
exit (退出root模式等)
sudo chmod -R 755 文件名/文件夹名 (获取文件/文件夹的755权限)
chown [用户] [文件或目录] (改变文件或目录的所有者)
chgrp [用户组] [文件或目录] (改变文件或目录的所属组)
make (编译成.exe)
wget(从网络上下载文件)
wget -t 0 -c (支持自动重连下载)

3. 解压/解包

  • tar文件 (注:tar是打包,不是压缩!)
    解包:tar xvf FileName.tar
    打包:tar cvf FileName.tar DirName
  • .gz文件
    解压1:gunzip FileName.gz
    解压2:gzip -d FileName.gz
    压缩:gzip FileName
  • .tar.gz 和 .tgz文件
    解压:tar zxvf FileName.tar.gz
    压缩:tar zcvf FileName.tar.gz DirName

4. 安装和卸载deb软件包

安装:sudo dpkg -i deb文件
查看:sudo dpkg -l
卸载:sudo dpkg -r 软件名

5. 其他

查看IP地址:ifconfig
重启:reboot

参考资料:

[1] Linux 教程
[2] Linux常用命令
[3] linux中tar命令的用法
[4] 全网最全Linux命令总结

二、vim/vi里的操作

:q 退出
:wq 保存并退出
:w 保存
:q! 强行退出(不保存退出)
:w! 强行保存
i 进入编辑,转为输入模式(光标前面)
a 进入编辑,转为输入模式(光标后面)
o 进入编辑,转为输入模式(光标下方新建一行)
Esc 退出i(插入)命令

三、超算中PBS常用命令

pbsnodes (查看所有节点)
pbsnodes -l free (查看空闲节点)
pbsnodes 某节点 (查看某节点状态)
ssh 某节点 (转到某节点)
exit (离开节点)
qsub 文件名.pbs/sh (提交任务)
qstat (列出队列)
qstat -a (列出队列的详细信息)
qstat -q (列出节点信息)
qstat -n (列出队列中使用的节点)
qstat -f jobid (查看jobid任务的详细信息)
qdel jobid (取消任务)

另外,Slurm调度系统的默认提交作业命令为:sbatch,而不是qsub。有些超算只支持sbatch。

四、其他

1. Linux环境变量

  • 方法1:修改/etc/environment文件(对所有用户有效)
  • 方法2:修改.bashrc文件(对当前用户有效)

参考资料:Linux PATH 作用以及查看和修改方法_haozhepeng的专栏

2. Linux开机自启

sh文件中包含:

#!/bin/bash
#chkconfig: 2345 80 90
#description:auto_run

sh文件移动到/etc/init.d后,分别输入命令:

  • chkconfig --add xxx.sh
  • chkconfig --list   
  • chkconfig xxx.sh on 
  • service xxx.sh start

参考资料:linux 开机启动 .sh 文件 - 自己的太阳 - 博客园

3. sh文件

提交任务,执行a.py。a.sh文件为:

#!/bin/sh
#PBS -N task
#PBS -l nodes=1:ppn=1
export OMP_NUM_THREADS=1
python a.py

如果是执行a.exe文件,a.sh文件修改为:

#!/bin/sh
#PBS -N task
#PBS -l nodes=1:ppn=1
export OMP_NUM_THREADS=1
./a.exe

有时候需要加上“cd $PBS_O_WORKDIR”,定位到工作目录中才可以找到a.py文件。a.sh文件修改为:

#!/bin/sh
#PBS -N task
#PBS -l nodes=1:ppn=1
cd $PBS_O_WORKDIR
export OMP_NUM_THREADS=1
python a.py

如果使用集群或者超算,存在多个队列,可能还需要加上队列的名字,如“#PBS -q debug”。a.sh文件修改为:

#!/bin/sh
#PBS -N task
#PBS -l nodes=1:ppn=1
#PBS -q debug
cd $PBS_O_WORKDIR
export OMP_NUM_THREADS=1
python a.py

4. makefile文件

makefile文件(用于编译fortran文件,只对该软件路径有效,仅作参考)

INC := -I/public/software/compiler/intel/composer_xe_2015.2.164/mkl/include/intel64/lp64
LIB := -L/public/software/compiler/intel/composer_xe_2015.2.164/mkl/lib/intel64
mpi:= -I/public/software/mpi/mpich/3.1.4/intel/include /public/software/mpi/mpich/3.1.4/intel/lib -lmpich -limf -lsvml -lintlc 
src:=Console1
exec:=a
all: $(src).f90
ifort  $(src).f90  $(INC) $(LIB) -openmp -lmkl_intel_lp64 -Wl,--start-group -lmkl_intel_thread -lmkl_lapack95_lp64 -lmkl_core -lmkl_blas95_lp64  -Wl,--end-group -liomp5 -lpthread -O2 -o $(exec).exe

最新编译fortran的代码见这篇:在Linux系统下Fortran和MKL环境的安装和设置

5,716 次浏览

【说明:本站主要是个人的一些笔记和代码分享,内容可能会不定期修改。为了使全网显示的始终是最新版本,这里的文章未经同意请勿转载。引用请注明出处:https://www.guanjihuan.com

评论说明:
(1)在保留浏览器缓存的前提下,目前支持72小时自主修改或删除个人评论。如果自己无法修改或删除评论,可再次评论或联系我。如有发现广告留言,请勿点击链接,博主会不定期删除。
(2)评论支持Latex公式。把latexpage作为标签放在任何位置,评论中的公式可正常编译,示例:
[latexpage] $Latex formula$ 
(3)本站评论支持代码格式。在代码前后加上以下标签,留言可保留缩进显示代码:
<!-- wp:code --><pre class="wp-block-code"><code>
	代码内容
</code></pre><!-- /wp:code -->

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注