0、平时自己用的命令

  在跑一些程序,例如deep learning的时候,总是希望查看一下cpu、gpu、内存的使用率。

(1)cpu、内存情况:使用top命令;

(2)查看gpu:使用 nvidia-smi 命令,但只显示一次,nvidia-smi -l:实时检测更新;watch -n 10 nvidia-smi:最常用的参数是 -n, 后面指定是每多少秒来执行一次命令。监视显存:我们设置为每 10s 显示一次显存的情况。

  显存占用和GPU占用是两个不一样的东西,显卡是由GPU和显存等组成的,显存和GPU的关系有点类似于内存和CPU的关系。我跑caffe代码的时候显存占得少,GPU占得多,师弟跑TensorFlow代码的时候,显存占得多,GPU占得少

(3)CUDA_VISIBLE_DEVICES=0:指定哪个GPU;

  在代码里操作是:os.environ['CUDA_VISIBLE_DEVICES']='0'

(4)修改可读文件

  sudo gedit 文件名;

  gedit 文件名;

(5)更改环境变量

gedit ~/.bashrc     //更改环境变量
source ~/.bashrc //刷新环境变量

1、cd命令

  用于切换当前目录,它的参数是要切换到的目录的路径,可以是绝对路径,也可以是相对路径。如:
  1.  cd /root/Docements    # 切换到目录/root/Docements
  2.  cd ./path     # 切换到当前目录下的path目录中,“.”表示当前目录
  3.  cd ../path    # 切换到上层目录中的path目录中,“..”表示上一层目录
  4. pwd:查看当前目录路径
2、ls命令
  这是一个非常有用的查看文件与目录的命令,list之意,它的参数非常多,下面就列出一些我常用的参数吧,如下:
  1.  -l :列出长数据串,包含文件的属性与权限数据等
  2.  -a :列出全部的文件,连同隐藏文件(开头为.的文件)一起列出来(常用)
  3.  -d :仅列出目录本身,而不是列出目录的文件数据
  4.  -h :将文件容量以较易读的方式(GB,kB等)列出来
  5.  -R :连同子目录的内容一起列出(递归列出),等于该目录下的所有文件都会显示出来
  注:这些参数也可以组合使用,下面举两个例子:
  1.  ls -l #以长数据串的形式列出当前目录下的数据文件和目录
  2.  ls -lR #以长数据串的形式列出当前目录下的所有文件

3、mkdir命令

  mkdir:可建立目录并同时设置目录的权限;

  mkdir -p /home/test:可直接建立路径中的文件;

  rm -r test  :删除文件及下面的子文件;

4、cp命令
  该命令用于复制文件,copy之意,它还可以把多个文件一次性地复制到一个目录下,它的常用参数如下:
  1.  -a :将文件的特性一起复制
  2.  -p :连同文件的属性一起复制,而非使用默认方式,与-a相似,常用于备份
  3.  -i :若目标文件已经存在时,在覆盖时会先询问操作的进行
  4.  -r :递归持续复制,用于目录的复制行为
  5.  -u :目标文件与源文件有差异时才会复制

例如 :

  1.  cp -a file1 file2 #连同文件的所有特性把文件file1复制成文件file2
  2.  cp file1 file2 file3 dir #把文件file1、file2、file3复制到目录dir中
5、mv命令
  该命令用于移动文件、目录或更名,move之意,它的常用参数如下:
  1.  -f :force强制的意思,如果目标文件已经存在,不会询问而直接覆盖
  2.  -i :若目标文件已经存在,就会询问是否覆盖
  3.  -u :若目标文件已经存在,且比目标文件新,才会更新
  注:该命令可以把一个文件或多个文件一次移动一个文件夹中,但是最后一个目标文件一定要是“目录”。
  1.  mv file1 file2 file3 dir # 把文件file1、file2、file3移动到目录dir中
  2.  mv file1 file2 # 把文件file1重命名为file2
6、rm命令
   该命令用于删除文件或目录,remove之间,它的常用参数如下:
  1. -f :就是force的意思,忽略不存在的文件,不会出现警告消息
  2. -i :互动模式,在删除前会询问用户是否操作
  3. -r :递归删除,最常用于目录删除,删除目录及下面所有文件,它是一个非常危险的参数

例如 :

  1.  rm -i file # 删除文件file,在删除之前会询问是否进行该操作
  2.  rm -fr dir # 强制删除目录dir中的所有文件
7、ps命令
  该命令用于将某个时间点的进程运行情况选取下来并输出,process之意,它的常用参数如下:
  1. -a  显示终端上的所有进程,包括其它用户的进程。
  2. -u  显示进程的详细状态
  3. -x  显示没有控制终端的进程
  4. -w 显示加宽,以便显示更多信息
  5. -r  只显示正在运行的进程
  其实我们只要记住ps一般使用的命令参数搭配即可,它们并不多,如下:
  1.  ps aux # 查看系统所有的进程数据
  2.  ps ax # 查看不与terminal有关的所有进程
  3.  ps -lA # 查看系统所有的进程数据
  4.  ps axjf # 查看连同一部分进程树状态

7.1 查询端口是否被占用

  netstat   -nultp(此处不用加端口号)//查看当前所有tcp端口·

  该命令是查看当前所有已经使用的端口情况

8、df和du命令

  Linux中df命令:用于查看Linux文件系统的状态信息,显示各个分区的容量、已使用量、未使用量及挂载点等信息。

  top命令:用来动态显示运行中的进程。top命令能够在运行后,在指定的时间间隔更新显示信息。可以使用 top -d  来指定显示信息更新的时间间隔。

  linux中du命令:用于查看文件或文件夹的大小。

    du -b /home  以字节为单位显示/home 文件夹下各个子文件夹的大小

    du -ks home  以千字节KB 为单位显示/home 文件夹的总大小

9、kill命令
  该命令用于向某个工作(%jobnumber)或者是某个PID(数字)传送一个信号,它通常与ps和jobs命令一起使用,它的基本语法如下:
kill -signal PID
  signal的常用参数如下:
  注:最前面的数字为信号的代号,使用时可以用代号代替相应的信号。
  1.  1:SIGHUP,启动被终止的进程
  2.  2:SIGINT,相当于输入ctrl+c,中断一个程序的进行
  3.  9:SIGKILL,强制中断一个进程的进行
  4.  15:SIGTERM,以正常的结束进程方式来终止进程
  5.  17:SIGSTOP,相当于输入ctrl+z,暂停一个进程的进行
例如:

  # 以正常的结束进程方式来终于第一个后台工作,可用jobs命令查看后台中的第一个工作进程

  kill -SIGTERM %1

  # 重新改动进程ID为PID的进程,PID可用ps命令通过管道命令加上grep命令进行筛选获得

  kill -SIGHUP PID

10、killall命令
  该命令用于向一个命令启动的进程发送一个信号,它的一般语法如下:
killall [-iIe] [command name]
  它的参数如下:
  1.  -i :交互式的意思,若需要删除时,会询问用户
  2.  -e :表示后面接的command name要一致,但command name不能超过15个字符
  3.  -I :命令名称忽略大小写
  4.  # 例如:
  5.  killall -SIGHUP syslogd # 重新启动syslogd
11、file命令
该命令用于判断接在file命令后的文件的基本数据,因为在Linux下文件的类型并不是以后缀为分的,所以这个命令对我们来说就很有用了,它的用法非常简单,基本语法如下:
  1.  file filename
  2.  #例如:
  3.  file ./test
12、tar命令
该命令用于对文件进行打包,默认情况并不会压缩,如果指定了相应的参数,它还会调用相应的压缩程序(如gzip和bzip等)进行压缩和解压。它的常用参数如下:
  1.  -c :新建打包文件
  2.  -t :查看打包文件的内容含有哪些文件名
  3.  -x :解打包或解压缩的功能,可以搭配-C(大写)指定解压的目录,注意-c,-t,-x不能同时出现在同一条命令中
  4.  -j :通过bzip2的支持进行压缩/解压缩
  5.  -z :通过gzip的支持进行压缩/解压缩
  6.  -v :在压缩/解压缩过程中,将正在处理的文件名显示出来
  7.  -f filename :filename为要处理的文件
  8.  -C dir :指定压缩/解压缩的目录dir
上面的解说可以已经让你晕过去了,但是通常我们只需要记住下面三条命令即可:
  1.  压缩:tar -jcv -f filename.tar.bz2 要被处理的文件或目录名称
  2.  查询:tar -jtv -f filename.tar.bz2
  3.  解压:tar -jxv -f filename.tar.bz2 -C 欲解压缩的目录
注:文件名并不定要以后缀tar.bz2结尾,这里主要是为了说明使用的压缩程序为bzip2
13、cat命令(Concatenate连续)
  该命令用于查看文本文件的内容,后接要查看的文件名,通常可用管道与more和less一起使用,从而可以一页页地查看数据。例如:
  (1)cat text  : 查看text文本文件中的内容,将内容连续输出到屏幕上;
  (2)more test:可以一页页地查看数据;
  (3)less test:可以一页页地查看数据,同时可以上下翻页;
  (4)head -n -100 test:列出文件前100行,后面的不显示;
14、chmod命令
  该命令用于改变文件的权限,一般的用法如下:
  1.  chmod [-R] xyz 文件或目录
  2.  -R:进行递归的持续更改,即连同子目录下的所有文件都会更改
  同时,chmod还可以使用u(user)、g(group)、o(other)、a(all)和+(加入)、-(删除)、=(设置)跟rwx搭配来对文件的权限进行更改。
 # 例如:
  1. chmod 0755 file # 把file的文件权限改变为-rxwr-xr-x
  2. chmod g+w file # 向file的文件权限中加入用户组可写权限
15、vim命令
  该命令主要用于文本编辑,它接一个或多个文件名作为参数,如果文件存在就打开,如果文件不存在就以该文件名创建一个文件。vim是一个非常好用的文本编辑器,它里面有很多非常好用的命令,在这里不再多说。
命令模式:
ESC :命令
输入模式:
ESC
然后再按下下面这几个键:
a //在光标所在字符后面插入
A //在光标所在行尾输入 i //在光标所在处插入
I //在光标所在行首插入 o //在光标所在行的下一行插入
O //在光标所在行的上一行插入
16、gcc命令
  对于一个用Linux开发C程序的人来说,这个命令就非常重要了,它用于把C语言的源程序文件,编译成可执行程序,由于g++的很多参数跟它非常相似,所以这里只介绍gcc的参数,它的常用参数如下:
  1. -o :output之意,用于指定生成一个可执行文件的文件名
  2. -c :用于把源文件生成目标文件(.o),并阻止编译器创建一个完整的程序
  3. -I :增加编译时搜索头文件的路径
  4. -L :增加编译时搜索静态连接库的路径
  5. -S :把源文件生成汇编代码文件
  6. -lm:表示标准库的目录中名为libm.a的函数库
  7. -lpthread :连接NPTL实现的线程库
  8. -std= :用于指定把使用的C语言的版本
# 例如:
  1. # 把源文件test.c按照c99标准编译成可执行程序test
  2. gcc -o test test.c -lm -std=c99
  3. #把源文件test.c转换为相应的汇编程序源文件test.s
  4. gcc -S test.c
17、time命令
  该命令用于测算一个命令(即程序)的执行时间。它的使用非常简单,就像平时输入命令一样,不过在命令的前面加入一个time即可,例如:
  1.  time ./process
  2.  time ps aux
  在程序或命令运行结束后,在最后输出了三个时间,它们分别是:
  1. user:用户CPU时间,命令执行完成花费的用户CPU时间,即命令在用户态中执行时间总和;
  2. system:系统CPU时间,命令执行完成花费的系统CPU时间,即命令在核心态中执行时间总和;
  3. real:实际时间,从command命令行开始执行到运行终止的消逝时间;
  注:用户CPU时间和系统CPU时间之和为CPU时间,即命令占用CPU执行的时间总和。实际时间要大于CPU时间,因为Linux是多任务操作系统,往往在执行一条命令时,系统还要处理其它任务。另一个需要注意的问题是即使每次执行相同命令,但所花费的时间也是不一样,其花费时间是与系统运行相关的。

Linux 基本命令总结的更多相关文章

  1. Linux基本命令(一)

    Linux基本命令 编辑器 vim编译器 Gnu工具链-gcc调试器 GDB操作系统是用C来写的 系统编程 (核心骨架 80%) 文件I/O 文件系统 进程{ 进程控制原语.进程间通信.进程间关系 信 ...

  2. 2 、Linux基本命令-ls-pwd-cd-date-hwclock

    Linux基本命令: 1.ls-查看目录下的文档 语法: ls 目录 注: .当前目录  ..上级目录 如:ls /etc/ 相关参数: -l  显示详细信息 ls /etc/ -l -a 显示隐藏的 ...

  3. Linux基本命令 目录

    Linux基本命令 目录 Linux基本命令(1)管理文件和目录的命令 Linux基本命令(2)有关磁盘控件的命令 Linux基本命令(3)文件备份和压缩的命令 Linux基本命令(4)有关关机和查看 ...

  4. linux 基本命令 [转]

    linux 基本命令 1.ls  (list 显示当前目录下文件和目录 ls -l 详细显示 =ll ) [root@linux ~]# ls [-aAdfFhilRS] 目录名称 [root@lin ...

  5. 转:Linux基本命令大全

    Linux基本命令大全   新手刚刚接触Linux的时候可能处处感到不便,不过没有关系,接触新的事物都有这样的一个过程,在你用过Linux一段时间后,你就会逐渐了解Linux其实和Windows一样容 ...

  6. 剑指Offer——知识点储备--Linux基本命令+Makefile

    剑指Offer--知识点储备–Linux基本命令 1.linux下查看进程占用cpu的情况(top): 格式 top [-] [d delay] [q] [c] [S] [s] [i] [n] 主要参 ...

  7. Linux(1)- 服务器核心知识、Linux入门、VMware与centeos安装、远程连接linux、linux基本命令使用

    一.服务器核心知识 1.电脑和电脑的硬件组成 现在的人们几乎无时无刻不在使用着电脑!不管是桌上型电脑(桌机).笔记型电脑(笔电).平板电脑,还是智慧型手机等等,这些东西都算是电脑.虽然接触这么多,但是 ...

  8. Linux学习总结(9)——Linux 新手必知必会的 10 条 Linux 基本命令

    Linux 对我们的生活产生了巨大的冲击.至少你的安卓手机使用的就是 Linux 核心.尽管如此,在第一次开始使用 Linux 时你还是会感到难以下手.因为在 Linux 中,通常需要使用终端命令来取 ...

  9. 第三章 Linux基本命令操作

    第三章  Linux基本命令操作 ¨  本节所讲内容: ¨  3.1  Linux终端介绍 Shell提示符 Bash Shell基本语法 ¨  3.2  基本命令的使用:ls.pwd.cd.hist ...

  10. linux 基本命令 1

      Linux基本命令(一) 目标 熟练使用 Linux常用的命令 ls  查看文件 clear   清空 cd pwd mkdir touch rm cp mv tree chmod find gr ...

随机推荐

  1. mysql 集合函数与where条件

    这里要查询的是去过的国家数(country)的次数ct大于2的人的名字 select name ,count(country) ct from sz03 where ct >2 group by ...

  2. linux 文件夹-文件权限设置

    只设置文件夹权限为755 文件权限为644find -type d -exec chmod 755 {} \;  find -type f -exec chmod 644 {} \;  或者  fin ...

  3. Crashing Robots - poj 2632

      Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 8352   Accepted: 3613 Description In ...

  4. 05 linux下编译Memcached

    一: linux下编译Memcached(1)先在linux上安装gcc,cmake,autoconf,libtool工具,以后会使用到. 安装命令为:yum install gcc make aut ...

  5. Shell 编程基础 --语法高速入门

    简单的说shell就是一个包括若干行Shell或者Linux命令的文件.对于一次编写,多次使用的大量命令,就能够使用单独的文件保存下来,以便日后使用.通常shell脚本以.sh为后缀.第一行一定要指明 ...

  6. Android 中通过切割图片创建人物行走动画

    以前一直使用序列图片来实现动画效果,造成空间的极大浪费,所以想要尝试下切割图片来实现动画. 如图所示,是由66rpg纸娃娃系统生成的角色行走图.本程序必须实现将人物的整体图片切割后存入4x4的数组来动 ...

  7. Android异步处理四:AsyncTask的实现原理

    在<Android异步处理二:使用AsyncTask异步更新UI界面>一文中,我们介绍了如何使用AsyncTask实现异步下载图片,并且更新图片到UI界面的方法.本篇我们将学习Framew ...

  8. Linux 技巧:让进程在后台运行的可靠方法

    原文链接:http://www.ibm.com/developerworks/cn/linux/l-cn-nohup/ 想让进程在断开连接后依然保持运行?如果该进程已经开始运行了该如何补救? 如果有大 ...

  9. github-readme.md-格式

    大标题 大标题一般显示project名,类似html的<h1> 你仅仅要在标题以下跟上=====就可以 中标题 中标题一般显示重点项,类似html的<h2> 你仅仅要在标题以下 ...

  10. Unity3d 摇杆奖励

    单个单元: publicclass RockerSingle : MonoBehaviour { // 枚举.类别 RockerType  rockerType; //是否有效,最上面的为无效,即为f ...