linux常用命令

原创 2016年07月28日 20:27:22

查看MD5值
md5sum filename
window下用certutil -hashfile filename MD5

树形显示dirname目录结构
treedirname
树形显示,显示深度为2
tree -L 2 dirname
查看linux版本
lsb_release -a
-bash-4.1$ lsb_release -a
LSB Version: :base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch
Distributor ID: CentOS
Description: CentOS release 6.7 (Final)
Release: 6.7
Codename: Final

cat /proc/version

得到:
Linux version 2.6.32-573.18.1.el6.toav2.x86_64 (root@localhost.localdomain) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-16) (GCC) ) #1 SMP Sun Jul 17 12:44:29 CST 2016

查看硬件信息
内存:free -m
硬盘:df -h
cpu: lscpu 或 cat /proc/cpuinfo
显卡:nvidia-smi

vim相关
1 跳转到第250行

命令模式输入250gg, 或者:250回车
2 删除第20~30行
命令模式输入 20,30d
3从当前行开始删除10行
 10dd
4 在10~20 行首添加 # 号注释
:10,20 s/^/#/g
:10,$ s/^/#/g 第10行到最后一行
4.1 在所有行中把from替换为to
:%s/from/to/g
:%s/^ef4.*[0-9].*|//g 支持正则,把行首为 ef4*一个数字*| 的字符替换为空。
vim正则表达式:http://tanqisen.github.io/blog/2013/01/13/vim-search-replace-regex/

5 复制粘贴vim打开的特定文本
    按住ctrl,用光标选定一些行,y,光标移动到需要复制的地方,p
6 查看正在编辑的文件名
:ls
7 调到首行和尾行
命令模式下gg 首行,G尾行
8 块操作
ctrl+v进入“可视块”模式,光标选取要操作的文本块,按d删除文本块,
删除空行:
:g/^$/d
:g/patten/cmd 按行找到patten,然后按cmd操作该行

删除查找到的所有文件:
find -name searcher.h|xargs rm
递归查找当前目录下的searcher.h文件,并且删除。 | xargs为管道传参 
find -name "*.cpp"|xargs grep "extern \""
递归查找当前目录下的*.cpp文件,并且在找到的cpp文件中寻找 extern "。
find -regex "^.*step-[0-9][0-9][04268]000-align\.png"
按照正则表达式查找包含 “step2个数字一个偶数000-align.png”的文件
find . -name ".svn" -type d
递归查找当前目录(find后面直接跟查找目录,再跟-name一类的参数)下的 .svn目录
 find -iname "*.png" -o -iname "*.bmp"
查找png文件 或者bmp文件,且不区分大小写。 -iname 不区分大小写, -o 逻辑或

查看本机ip:
hostname -i
查看历史命令:
history
查看目录占用磁盘大小 du(disk use)
du
du -a 查看目录及文件占用大小
du -m -a 以M byte为单位显示所有文件大小
du -h --max-depth=2 以查看当前目录下个目录的大小,递归查看的目录层级设为2

查看磁盘使用情况:
df -h
查看文件的头部尾部100行,查看文件行数
head -n 100 dataprocess.sql
tail -n 100 dataprocess.sql
wc -l dataprocess.sql
定时刷新查看文件,比如tail用tailf、head用headf
tailf -n 100 dataprocess.sql
tail -f 1 train.log 每隔1s中显示一下 train.log的内容。

命令帮助,如ps命令:
man ps
ps --help
跳转到上次的目录
cd -
远程拷贝文件,本地复制到远程 
scp
scp fileSrc remote_username@remote_ip: remote_folder
scp fileSrc remote_username@remote_ip:remoter_file  
远程到本机
scp huangzhiqiang03@168.182.44.20:beijing_dum.sql hzq_dum.sql
远程机器168.182.44.20的huangzhiqiang03用户的主目录下有个文件hzq_dum.sql,把它转移到本地来。
scp -rp  huangzhiqiang03@168.182.44.20:/data1/hzq ./
把远程机器168.182.44.20的huangzhiqiang03用户的/data1/hzq目录拷贝到本机当前目录下,r表示递归,p表示备份模式。
如果不是默认的22端口(scp走的ssh端口,需要指定端口号 如8022端口号)
scp -r -P 8022 ef4_6k_files/ef4_6k hzq@10.91.40.132:/home/hzq/

ps
查看进程 process status
ps -u root 显示root用户启动的进程
ps -ef 显示所有进程,连同命令行
ps -ef|grep ssh 显示特定进程,如保函ssh名字的进程
ps aux 列出当前正在内存当中的程序
ps aux>ps001.txt 将ps aux的结果转存到文件ps001.txt中
重命名:
mv oldfile newfile
获取linux下url形式的文件:
curl -O "http://195.188.28.57:8081/fileserver?method=getfile&hzqid=B1DAEBA416DAA0F6378A21B33D5"
建立多层目录:
mkdir -p process-center/hzq
删除output目录及内部所有内容,r表示递归删除,f表示强制删除,删除的时候不提示信息。
rm -r output
rm -rf framework   
压缩解压:
压缩:
tar -zcvf db.gz  /home/test/user/hzq/outdir/*.db
zip jcdw.zip .ttf*
zip -r cxl.zip ./* 
解压tar包特定文件:
tar -tvf df18_20k.tar|grep df18_20k.txt
-rw-r--r-- zhanghuisonach/10000 3147220 2016-10-17 17:29 df18_20k/prosodylabeling/df18_20k.txt
tar -xvf df18_20k.tar df18_20k/prosodylabeling/df18_20k.txt
 将当前目录下的所有文件和文件夹全部压缩成cxl.zip文件,-r表示递归压缩子目录下所有文件
解压:
tar -zxvf processworker.tar.gz
tar -jxvf processworker.tar.bz2   
unzip jcdw.zip

显示详细文件信息
ls -l 或者用 ll
查找进程,进程信息中(执行路径、程序名称)包含”processworker_check“
按时间查看:
1) ls -lt  时间最近的在前面
2) ls -ltr 时间从前到后
ps -ef|grep processworker_check

杀掉(-9强制)某个进程
kill 进程号
kill -9 进程号

文件上传到linux
rz       默认文本形式传输
rz -be   二进制传输
文件从linux到本地下载
sz 文件名

查找文件,在当前目录及其子目录下 名称包含860439的文件或目录:
find ./ -name "*860439*"
在当前目录及其子目录下的文件中查找vocoder字符串的
grep -r "vocoder"
搜索cpp文件并在搜索结果中查找vocoder字符串的
find -name "*.cpp"|xargs grep "vocoder"
更多参考:http://blog.chinaunix.net/uid-25266990-id-199887.html

文件转码:iconv
在vim下用set fileencoding命令得到文件编码,用iconv将文件ef4.txt由latin1转码为utf-8形式到文件ef4_utf8.txt中
iconv -f latin1 -t utf-8 ef4.txt > ef4_utf8.txt
iconv -c -f utf-16le -t cp936 input/bug.txt > bug_gbk.txt (加-c忽略无效字符)
查看环境变量:
export
gdb查看core文件:
gdb exe core.67842
core.67842为core文件,exe为core对应的可执行文件
跟踪调试正在运行的进程 44179为进程号。
gdb exe 44179
拷贝目录:(output/output为原目录,hzq为目标目录)
cp -r output/output/ hzq/
拷贝目录加覆盖提示 h2的内容考入h1中:
 cp -ri h2/* h1/
重定向输出 > ,文件尾部附加>>:
pg_dump -h120.199.54.43 -Upg -p8900 jcdw_hzq -tpoi > dump_poi.sql
cat in.sh > in2.sh
./exe > output.txt
ps >> output.txt
下载文件到本地:
sed 字符串替换:
sed -i “s/bm201505221419551075775969_copy_rw/hzq/g” haidian.sql
在haidian.sql文件中进行字符串替换
grep原字符串 -rl ./|xargs sed -i "s/原字符串/新字符串/g"
在当前目录下的文件中进行字符串的查找替换
curl 为文件传输工具
curl -o a.html http://www.baidu.com  从http://www.baidu.com  抓取页面内容到一个文件中,下载百度主页并保存为 网页a.html
curl -O "http://142.118.28.57:8081/fileserver?method=getfile&hzqid=OOOOOXXXXXXFFFFFB33D5" 下载特定ip的特定文件
 
 
参考:http://www.cnblogs.com/gbyukg/p/3326825.html
linux 查看cpu、内存等信息:
查看文本文件
vim haidian.sql   ---slow
cat haidian.sql  从前显示,fast
tac haidian.sql 从后面显示,fast
head -n 20 haidian.sql 显示文件的前20行,fast
tail -n 20 haidian.sql 显示文件的后20行,fast
top
参考:http://www.cnblogs.com/Wen-Man/archive/2011/04/04/2373771.html
shell小脚本:
find
#!/bin/sh
str="*$1*"
find ./ -name $str
res=$(find ./ -name $str)
vim $res
./find 日志号
以前试的一些语法 http://user.qzone.qq.com/459125872/blog/1342751492
ldd 打印可执行文档依赖的共享库文件。
是glibc的一部分`
ldd multi_thread_test
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fb71ea11000)
libcrypto.so.10 => not found
libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007fb71e68e000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fb71e385000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007fb71e16f000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fb71dda5000)
/lib64/ld-linux-x86-64.so.2 (0x0000564b3820d000)

查看一个进程的cpu、内存使用情况:
top -p 进程号


查看linux版本

cat /proc/version

得到:

Linux version 2.6.32-573.18.1.el6.toav2.x86_64 (root@localhost.localdomain) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-16) (GCC) ) #1 SMP Sun Jul 17 12:44:29 CST 2016


vim相关

1 跳转到第250行


命令模式输入250gg, 或者:250回车

2 删除第20~30行

命令模式输入 20,30d

3从当前行开始删除10行

 10dd

4 在10~20 行首添加 # 号注释

:10,20 s/^/#/g

5 复制粘贴vim打开的特定文本

    按住ctrl,用光标选定一些行,y,光标移动到需要复制的地方,p


删除查找到的所有文件:

find -name searcher.h|xargs rm

递归查找当前目录下的searcher.h文件,并且删除。 | xargs为管道传参 

find -name searcher.h|xargs rm

递归查找当前目录下的searcher.h文件,并且删除。 | xargs为管道传参 

find . -name ".svn" -type d
递归查找当前目录下的 .svn目录
 

查看本机ip:

hostname -i

查看历史命令:

history

查看目录占用磁盘大小 du(disk use)

du

du -a 查看目录及文件占用大小

du -m -a 以M byte为单位显示所有文件大小

du -h --max-depth=2 以查看当前目录下个目录的大小,递归查看的目录层级设为2


查看磁盘使用情况:

df -h

查看文件的头部尾部100行,查看文件行数

head -n 100 dataprocess.sql

tail -n 100 dataprocess.sql

wc -l dataprocess.sql

命令帮助,如ps命令:

man ps

ps --help

跳转到上次的目录
cd -
远程拷贝文件,本地复制到远程 
scp
scp fileSrc remote_username@remote_ip: remote_folder
scp fileSrc remote_username@remote_ip:remoter_file  
远程到本机
scp huangzhiqiang03@168.182.44.20:beijing_dum.sql hzq_dum.sql
远程机器168.182.44.20的huangzhiqiang03用户的主目录下有个文件hzq_dum.sql,把它转移到本地来。
scp -rp  huangzhiqiang03@168.182.44.20:/data1/hzq ./
把远程机器168.182.44.20的huangzhiqiang03用户的/data1/hzq目录拷贝到本机当前目录下r表示递归,p表示备份模式。

ps
查看进程 process status
ps -u root 显示root用户启动的进程
ps -ef 显示所有进程,连同命令行
ps -ef|grep ssh 显示特定进程,如保函ssh名字的进程
ps aux 列出当前正在内存当中的程序
ps aux>ps001.txt 将ps aux的结果转存到文件ps001.txt中
重命名:
mv oldfile newfile

获取linux下url形式的文件:

curl -O "http://195.188.28.57:8081/fileserver?method=getfile&hzqid=B1DAEBA416DAA0F6378A21B33D5"

建立多层目录:

mkdir -p process-center/hzq

删除output目录及内部所有内容,r表示递归删除,f表示强制删除,删除的时候不提示信息。

rm -r output

rm -rf framework   

压缩解压:

压缩:

tar -zcvf db.gz  /home/test/user/hzq/outdir/*.db

zip jcdw.zip .ttf*

zip -r cxl.zip ./* 

 

 将当前目录下的所有文件和文件夹全部压缩成cxl.zip文件,-r表示递归压缩子目录下所有文件

解压:

tar -zxvf processworker.tar.gz     

unzip jcdw.zip


显示详细文件信息

ls -l 或者用 ll

查找进程,进程信息中(执行路径、程序名称)包含”processworker_check“
按时间查看:

1) ls -lt  时间最近的在前面

2) ls -ltr 时间从前到后

ps -ef|grep processworker_check

杀掉(-9强制)某个进程
kill 进程号
kill -9 进程号

文件上传到linux
rz       默认文本形式传输
rz -be   二进制传输
文件从linux到本地下载
sz 文件名

查找文件,在当前目录及其子目录下 名称包含860439的文件或目录:
find ./ -name "*860439*"

查看环境变量:
export

gdb查看core文件:

gdb exe core.67842

core.67842为core文件,exe为core对应的可执行文件

跟踪调试正在运行的进程 44179为进程号。

gdb exe 44179

拷贝目录:(output/output为原目录,hzq为目标目录)

cp -r output/output/ hzq/

拷贝目录加覆盖提示 h2的内容考入h1中:

 cp -ri h2/* h1/

重定向输出 > ,文件尾部附加>>:

pg_dump -h120.199.54.43 -Upg -p8900 jcdw_hzq -tpoi > dump_poi.sql

cat in.sh > in2.sh

./exe > output.txt

ps >> output.txt

下载文件到本地:

sed 字符串替换:

sed -i “s/原字符串/新字符串/g” `grep 原字符串 -rl 所在目录`

sed -i “s/bm201505221419551075775969_copy_rw/hzq/g” haidian.sql

curl 为文件传输工具

curl -o a.html http://www.baidu.com  从http://www.baidu.com  抓取页面内容到一个文件中,下载百度主页并保存为 网页a.html

curl -O "http://142.118.28.57:8081/fileserver?method=getfile&hzqid=OOOOOXXXXXXFFFFFB33D5" 下载特定ip的特定文件

参考:http://www.cnblogs.com/gbyukg/p/3326825.html

ldd 打印可执行文档以来的共享库文件。是glibc的一部分`

ldd multi_thread_test
    libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fb71ea11000)
    libcrypto.so.10 => not found
    libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007fb71e68e000)
    libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fb71e385000)
    libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007fb71e16f000)
    libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fb71dda5000)
    /lib64/ld-linux-x86-64.so.2 (0x0000564b3820d000)

linux 查看cpu、内存等信息:

查看文本文件

vim haidian.sql   ---slow

cat haidian.sql  从前显示,fast

tac haidian.sql 从后面显示,fast

head -n 20 haidian.sql 显示文件的前20行,fast

tail -n 20 haidian.sql 显示文件的后20行,fast

top

参考:http://www.cnblogs.com/Wen-Man/archive/2011/04/04/2373771.html

shell小脚本:

find

#!/bin/sh
str="*$1*"
find ./ -name $str
res=$(find ./ -name $str)
vim $res

./find 日志号

以前试的一些语法 http://user.qzone.qq.com/459125872/blog/1342751492


linux命令连接(以前)

Linux 最最常用命令使用示例(10个并配图)

之前一个朋友想要我教下Linux的使用,于是我按照命令的关联性做了一个入门级的教程 如下:(如果想下载 word 文件保存,请 下载) --------------------------------...
  • chinaeran
  • chinaeran
  • 2014年11月24日 13:04
  • 4830

Linux20个常用命令

玩过Linux的人都会知道,Linux中的命令的确是非常多,但是玩过Linux的人也从来不会因为Linux的命令如此之多而烦恼,因为我们只需要掌握我们最常用的命令就可以了。当然你也可以在使用时去找一下...
  • xufei512
  • xufei512
  • 2016年11月24日 17:43
  • 1573

linux常用命令详解

原文地址:linux常用命令详解 作者: Linux必学的60个命令 Linux提供了大量的命令,利用它可以有效地完成大量的工 作,如磁盘操作、文件存 ...
  • woxiaoheia
  • woxiaoheia
  • 2014年10月30日 09:32
  • 768

Linux常用命令大全

系统信息 arch 显示机器的处理器架构(1) uname -m 显示机器的处理器架构(2) uname -r 显示正在使用的内核版本 dmidecode -q 显示硬件系统部件 - ...
  • super_man_ww
  • super_man_ww
  • 2016年09月05日 17:30
  • 1205

入门学习Linux常用必会60个命令实例详解 Linux必学的60个命令

系统信息  arch 显示机器的处理器架构(1)  uname -m 显示机器的处理器架构(2)  uname -r 显示正在使用的内核版本  dmidecode -q 显示硬件系统部件 - (SMB...
  • u013046597
  • u013046597
  • 2017年04月08日 23:15
  • 7600

100个常用的linux命令

100个常用的linux命令
  • Mr_Leee
  • Mr_Leee
  • 2014年11月10日 00:17
  • 552

【Linux】linux常用基本命令

Linux中许多常用命令是必须掌握的,这里将我学linux入门时学的一些常用的基本命令分享给大家一下,希望可以帮助你们。...
  • xiaoguaihai
  • xiaoguaihai
  • 2013年03月22日 13:54
  • 524700

Linux基本操作 5----- Linux系统常用命令

1 日期时间     1 通过date查看当前系统的时间 date               2 格式化显示时间 date +%Y--%m--%d,中间的练级符号可以是任意的        ...
  • cgl1079743846
  • cgl1079743846
  • 2013年08月21日 09:45
  • 2810

Linux常用十大类命令书册

1、Linux管理文件和目录的命令 命令 功能 命令 功能 pwd 显示当前目录 ls 查看目录下的内容...
  • m0_37284701
  • m0_37284701
  • 2017年03月07日 19:44
  • 196

第二章、Linux操作系统及常用命令

第二章、Linux操作系统及常用命令02_01_Linux操作系统及常用命令Linux的基本原则:1、由目的单一的小程序组成;组合小程序完成复杂任务;2、一切皆文件;3、尽量避免捕获用户接口;4、配置...
  • Toormi
  • Toormi
  • 2015年08月13日 16:47
  • 1354
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:linux常用命令
举报原因:
原因补充:

(最多只允许输入30个字)