每天不断完善和更新自己的认知是件让人很愉悦的事情!!!MOMO:linux命令总结(一)zhuanlan.zhihu.comMOMO:linux命令总结(二)zhuanlan.zhihu.com
100、Linux命令大全教程(易百教程)
https://www.yiibai.com/linux/
99、如何学习(记住)linux命令(常用选项)
https://www.zhihu.com/question/21690166
98、linux命令英文缩写的含义(方便记忆)
http://blog.chinaunix.net/uid-27164517-id-3299073.html
97、grep(全称Global Regular Expression Print)
grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。
命令格式:grep [option] pattern file
96、从file2.txt中找出在file1.txt中也存在的内容行
[pengpeng@localhost ~]$ cat file1.txt
java
python
linux
[pengpeng@localhost ~]$ cat file2.txt
windows 10
windows 7
linux
C#
java
PHP
python
1003
Hello Word.
[pengpeng@localhost ~]$ cat file2.txt |grep -f file1.txt
linux
java
python
[pengpeng@localhost ~]$ cat file2.txt | grep -nf file1.txt (显示行号)
3:linux
5:java
7:python
95、从文件中查找某个关键词所在的内容行
[pengpeng@localhost ~]$ cat file1.txt
java
python
linux
[pengpeng@localhost ~]$ cat file2.txt
windows 10
windows 7
linux
C#
java
PHP
python
1003
Hello Word.
[pengpeng@localhost ~]$ grep 'linux' file1.txt
linux
[pengpeng@localhost ~]$ grep 'linux' file1.txt file2.txt
file1.txt:linux
file2.txt:linux
94、ln(Link files)
ln -s : link -soft 创建一个软链接,相当于创建一个快捷方式.
93、与服务器建立连接的工具
SecureCRTPortable
MobaXterm,xshell,Xftp,WinSCP
92、ping
Packet INternet Groper:分组因特网探测器 ,网际包探测器。
它原本是潜水艇人员的意思,表示回应的声纳脉冲。
在网络中 , ping是一个十分好用的tcp/ip工具,主要功能是用来检测网络的连通性和分析网络速度。
作为动词用时,表示“对.....进行ping操作”,如:ping www.lzu.edu.cn
91、windows下练习linux命令
练习部分linux命令:开始-->所有程序-->找到windows powershell
练习完整linux命令:安装linux系统或虚拟机
90、跳板机和堡垒机
跳板机是一个桥梁,出于安全性等方面的考虑,开发者必须首先登录跳板机,再通过跳板机登录到各应用服务器。
数据已经成为每个企业生存的关键,如何更安全的确保数据安全性与可用性是每个企业都必须思考的问题。从跳板机到硬件堡垒机,从硬件堡垒机到软件堡垒机、云堡垒机。在保障数据安全这条路上,我们都在不断探索安全的边缘。
运维圈内有这么一句话:70%故障来自内部人员的操作失误。企业里的运维人员都掌握着数据应用服务器的最高权限,一旦运维操作出现安全问题,将为企业带来巨大的损失。因此,加强对运维人员的操作监管、操作审计、事前严格控制,才能从源头真正解决问题。在这种情况下,针对运维操作的管理与审计的堡垒机应运而生。提前设置好边界、做好规则,将是企业发展中最重要的一步。
89、touch命令
linux中的touch命令不常用,一般用来修改文件时间戳,或者新建一个不存在的文件。
创建不存在的文件:touch test1.log test2.log
88、nl(Number of Lines)
nl test.log:用 nl 列出 test.log 的内容,文件中的空白行,nl 不会加上行号。
nl -b a test.log:用 nl 列出 test.log 的内容,空行也加上行号。
87、which、whereis 、locate、find
在linux要查找某个文件,但不知道放在哪里了,可以使用下面的一些命令来搜索:
which - 查看可执行文件的位置。
whereis - 查看文件的位置。
locate - 配合数据库查看文件位置。
find - 实际搜寻硬盘查询文件名称。
86、locate
搜索var目录下所有以peng开头的文件:
locate /data/datamining/var/peng
输出:
/data/datamining/var/pengpeng
/data/datamining/var/pengy_download
/data/datamining/var/pengy_upload
/data/datamining/var/pengpeng/download
/data/datamining/var/pengpeng/download/_SUCCESS
/data/datamining/var/pengpeng/download/data_0.gz
/data/datamining/var/pengy_download/data
/data/datamining/var/pengy_download/data_0.gz
/data/datamining/var/pengy_download/data/data.txt.gz
/data/datamining/var/pengy_upload/cf(2).txt
85、whereis
whereis命令可以定位文件的路径位置。
whereis python
输出:
python: /usr/bin/python2.7 /usr/bin/python /usr/bin/python2.7-config /usr/bin/python3.6 /usr/bin/python3.6m /usr/lib/python2.7 /usr/lib/python3.6 /usr/lib64/python2.7 /usr/lib64/python3.6 /etc/python /usr/local/lib/python3.6 /usr/include/python2.7 /usr/include/python3.6m /usr/share/man/man1/python.1.gz
84、which命令
使用which命令,可以看到某个系统命令是否存在,以及执行的到底是哪个路径下的命令。
which pwd
输出:
/usr/bin/pwd
which cd
输出:
/usr/bin/cd
which which
输出:
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
/usr/bin/alias
/usr/bin/which
83、linux系统驱动升级(CentOS)
82、查看linux系统驱动
cat /usr/local/cuda/version.txt
81、window10上卸载旧版本tensorflow
win+R cmd 进入终端目录:d:
cd \anaconda3\anaconda_install\Lib\site-packages 本地放所有包的位置
pip uninstall tensorflow
80、cat的三大功能:
79、显示行号
cat -n test_set.csv
78、grep寻找文件中某个单词(如loss)并标红
cat train.log | grep loss --color=auto
77、逻辑cpu数,物理cpu数,核数之间的关系
总核数 = 物理CPU个数 X 每颗物理CPU的核数
总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数
76、查看CPU信息(型号)
cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
75、查看每个物理CPU中core的个数(即核数)
cat /proc/cpuinfo| grep "cpu cores"| uniq
74、查看物理CPU个数
cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l
73、NVIDIA(英伟达)
72、一个浮点数是4Byte
Byte表示字节 ,bit表示位。
二进制数系统中,每个0或1就是一个位(bit,比特位,是计算机表示数据最小的单位), 位是数据存储的最小单位。其中8bit就称为一个字节,即1Byte=8bit.
一个浮点数是4Byte,即32bit,1KB=1024Byte,如果有64*6814*15个浮点参数,则参数所占用大小为64*6814*15*4/1024/1024=25M.
71、nvidia-smi中memory-usage和GPU-Util compute的区别
Memory-Usage=仓库,显存使用率,表示参数占用情况。
gpu-util=工人,GPU使用率,表示计算力情况。
仓库存东西 但是工人可以不工作,比如看下图,现在的参数已经基本把GPU占满了,但是右边为0,说明GPU没有在计算。
一般来说GPU使用率高的时候,显存使用率都会比较高;但显存使用率高的时候,不一定GPU使用率也高。
以一般3D游戏为例,GPU使用率高,说明GPU在高速运算,个时候通常各种运算数据都已经载入显存内,例如纹理、贴图、帧缓冲等数据。
而一般显卡的显存容量是和GPU的处理能力相匹配的,所以通常GPU跑满的时候,显存也是处于接近存满数据的情况。
但是某些时候,显存存满了,GPU却不一定在高速工作。
例如场景切换载入,例如游戏暂停,例如某些单机游戏中打开菜单。
这种时候GPU的使用率都会很低甚至处于不活动状态。
70、寻找某个文件路径
find / -name testset.csv
69、从github上面下载代码
git clone https://github.com/shenweichen/DeepCTR.git
68、tensorboard显示网络结构
tensorboard --logdir=/data/project/pengpeng/dwl/
若是window10,则win+r+cmd进入终端,再输入上述命令。
67、查看linux上被自动killed的进程
egrep -i 'killed process' /var/log/messages
显示结果中的anon-rss值代表“驻留集大小”,即当前在进程中为RAM分配的内存量。
66、查看tensorflow版本号
python
import tensorflow as tf
tf.__version__ 输出: '1.15.0'
tf.__path__ 输出:['/usr/local/anaconda3/lib/python3.5/site-packages/tensorflow'
exit()
65、查看当前环境所用python的位置
which python
/usr/local/anaconda3/bin/python (注意这个python不是一个文件夹)
64、显示某几行
从第58189 行开始,显示2行。即显示58189~58190 行
cat train.txt | tail -n +58189 | head -n 2
63、vi界面注释多行
(1)多行注释:
1. 首先按“Esc”进入命令行模式下,按下Ctrl + v,进入列(也叫区块)模式;
2. 在行首使用上下键选择需要注释的多行;
3. 按下键盘(大写)“I”键,进入插入模式;
4. 然后输入注释符(“//”、“#”等);
5. 最后按下“Esc”键,在按下“Esc”键后,会稍等一会才会出现注释,莫着急。
(2)删除多行注释:
1. 首先按“Esc”进入命令行模式下,按下Ctrl + v, 进入列模式;
2. 选定要取消注释的多行,如果是“//”注释,需执行两次该操作,如果是“#”注释,一次即可。
3. 按下“x”或者“d”.
62、统计行数
wc -l val.txt
61、解压.zip结尾的压缩文件
unzip xDeepFM-master.zip
60、统计当前文件夹下文件(如图片)的个数(包括子文件夹里的)
ls -lR|grep "^-"|wc -l
59、解压.tar和.tar.gz结尾的文件
tar -xvf file.tar
tar -xzvf file.tar.gz
-x:解压
-v:显示所有过程
-f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名。
-z:有gzip属性的
58、重命名文件或文件夹(mv命令与rename命令)
57、压缩某个文件夹为.tar.gz格式
tar -zcvf 打包后生成的文件名全路径 要打包的目录
tar -zcvf /data/pengpeng/svm.tar.gz /data/pengpeng/svm
56、文件压缩成.gz格式
gzip model_file
55、创建文件夹
mkdir 20201001 20201002 20201003
54、从服务器上传数据时创建识别文件
vi _HOLD_AND_POLL :wq
或
touch _HOLD_AND_POLL
53、查看逻辑CPU个数
cat /proc/cpuinfo |grep "processor"|sort -u|wc -l
52、各进程(任务)的状态查看
输入”top -c“命令,显示如下,默认情况下仅显示比较重要的PID、USER、PR、NI、VIRT、RES、SHR、S、%CPU、%MEM、TIME+、COMMAND 列。显示内容可更改。
按 f 键之后会显示各列的列表含义:
* PID = Process Id 表示进程ID,进程的唯一标识符。
* USER = Effective User Name 表示进程所有者的实际用户名。
* PR = Priority 进程的调度优先级,这个字段的一些值是rt,意味着这些进程运行为实时态。
* NI = Nice Value 进程的nice值(优先级),越小的值意味着越高的优先级,负值表示高优先级,正值表示低优先级。
* VIRT = Virtual Image (KiB) 进程使用的虚拟内存总量,单位kb,VIRT=SWAP+RES.
* RES = Resident Size (KiB) 驻留内存大小,驻留内存是任务使用的非交换物理内存大小,即进程使用的、未被换出的物理内存大小,单位kb,RES=CODE+DATA.
* SHR = Shared Memory (KiB) 进程使用的共享内存大小,单位kb.
* S = Process Status 进程的状态:D-不可中断的睡眠态,R–运行态,S–睡眠态,T–被跟踪或已停止,Z–僵尸态。
* %CPU = CPU Usage 自从上一次更新时到现在任务所使用的CPU时间百分比。
* %MEM = Memory Usage (RES) 进程使用的可用物理内存百分比。
* TIME+ = CPU Time, hundredths 任务启动后到现在所使用的全部CPU时间,精确到百分之一秒。
* COMMAND = Command Name/Line 运行进程所使用的命令命令名/命令行。
PPID = Parent Process pid
UID = Effective User Id
RUID = Real User Id
RUSER = Real User Name
SUID = Saved User Id
SUSER = Saved User Name
GID = Group Id
GROUP = Group Name
PGRP = Process Group Id
TTY = Controlling Tty
TPGID = Tty Process Grp Id
SID = Session Id
nTH = Number of Threads
P = Last Used Cpu (SMP)
TIME = CPU Time
SWAP = Swapped Size (KiB)
CODE = Code Size (KiB)
DATA = Data+Stack (KiB)
nMaj = Major Page Faults
nMin = Minor Page Faults
nDRT = Dirty Pages Count
WCHAN = Sleeping in Function
Flags = Task Flags
CGROUPS = Control Groups
SUPGIDS = Supp Groups IDs
SUPGRPS = Supp Groups Names
TGID = Thread Group Id
ENVIRON = Environment vars
vMj = Major Faults delta
vMn = Minor Faults delta
USED = Res+Swap Size (KiB)
nsIPC = IPC namespace Inode
nsMNT = MNT namespace Inode
nsNET = NET namespace Inode
nsPID = PID namespace Inode
nsUSER = USER namespace Inode
nsUTS = UTS namespace Inode
51、TB GB MB KB Byte 之间的转换