• Linux基础命令(二)


    文件搜索命令:

    find     作用:查找文件或目录     

    命令路径:/bin/find          执行权限:所有用户

    语法:find [搜索路径] [匹配条件]

    如果没有指定搜索路径,默认从当前目录查找

    find命令选项

    -name 按名称查找  精准查找

    eg:find  /etc  -name  “init” 在目录/etc中查找文件init

    -iname 按名称查找

    find查找中的字符匹配:

      *:匹配所有

      ?:匹配单个字符

    eg:find  /etc  -name  “init???”    在目录/etc中查找以init开头的,且后面有三位的文件

    模糊匹配的条件,建议使用单引号或双引号括起来。如果*被转义,可使用 单双引号括住查询条件,或者使用*。

    eg: # find . –name *g

    -size  按文件大小查找

    以block为单位,一个block是512B, 1K=2block    +大于  -小于  不写是等于 

    eg:find /etc -size -204800  在etc目录下找出大于100MB的文件

     100MB=102400KB=204800block

    -type  按文件类型查找 

     f 二进制文件  l 软连接文件 d 目录  c 字符文件 

    eg: find /dev -type c

    find查找的基本原则

    占用最少的系统资源,即查询范围最小,查询条件最精准

    eg:

    如果明确知道查找的文件在哪一个目录,就直接对指定目录查找,不查找根目录/

    grep命令 作用:在文件中搜寻字串匹配的行并输出      

    命令路径:/bin/grep         执行权限:所有用户

     语法:grep [-cinv] '搜寻字符串' filename

     选项与参数:

      -c :输出匹配行的次数(是以行为单位,不是以出现次数为单位

      -i :忽略大小写,所以大小写视为相同

      -n :显示匹配行及行号

      -v :反向选择,显示不包含匹配文本的所有行。

    eg:grep ftp  /etc/services 

    eg:#grep -v ^# /etc/inittab         去掉文件行首的#号

    eg:# grep -n “init”/etc/inittab  显示在inittab文件中,init匹配行及行号

    eg:# grep -c“init”/etc/inittab   显示在inittab文件中,init匹配了多少次

    which    作用:显示系统命令所在目录(绝对路径及别名) 

    命令路径:/usr/bin/which              执行权限:所有用户

    which命令的作用是,在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令

    # which ls

    alias ls='ls --color=auto'

            /bin/ls

    # which zs

    /usr/bin/which: no zs in (/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/ch/bin)

    whereis 作用:搜索命令所在目录 配置文件所在目录  及帮助文档路径     

    命令路径:/usr/bin/whereis           执行权限:所有用户

    eg: which passwd    和   whereis  passwd   

    eg:查看/etc/passwd配置文件的帮助,就用  man 5 passwd

    压缩解压缩命令:

    gzip   作用:压缩(解压)文件,压缩文件后缀为.gz    

    英文:GNU zip   命令路径:/bin/gzip         执行权限:所有用户

    gzip只能压缩文件,不能压缩目录;不保留原文件

    语法:gzip 文件

    -d将压缩文件解压(decompress)

    解压使用gzip –d或者 gunzip

    bzip2   作用:压缩(解压)文件,压缩文件后缀为.bz2

    命令路径:/usr/bin/bzip2        执行权限:所有用户

    语法:bzip2 [-k] [文件]  

      -k:产生压缩文件后保留原文件(压缩比高)

      -d 解压缩的参数(decompress)

    解压使用bzip2 –d或者 bunzip2

    zip    作用:压缩(解压)文件,压缩文件后缀为.zip

    命令路径:/usr/bin/zip            执行权限:所有用户

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

      -r压缩目录

    eg:zip services.zip /etc/services  压缩文件;

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

      如果不加-r选项,压缩后的文件没有数据。

    解压使用unzip 

    tar   作用:文件、目录打(解)包

    命令路径:/bin/tar            执行权限:所有用户

    语法:tar [-zcf] 压缩后文件名  文件或目录

      -c 建立一个压缩文件的参数指令(create),后缀是.tar

      -x 解开一个压缩文件的参数指令(extract)

      -z 以gzip命令压缩/解压缩  

      -j  以bzip2命令压缩/解压缩

      -v 压缩的过程中显示文件(verbose)

      -f file 指定文件名,必选项

      1, 单独的打包 ,解包   tar –cf   tar –xf

      2, 打包之后,进行压缩  gzip   bzip2

      3, 一步到位  tar –zcvf       tar -zxvf

    tar -cf   -xf     单独 压缩  解压缩

    tar  -z 以gzip打包目录并压缩  文件格式.tar.gz.tgz

    tar  -j 以bzip2打包目录并压缩  文件格式.tar.bz2

    eg:tar -zcvf dir1.tar.gz  dir1   使用gzip将目录dir1压缩成一个打包并压缩文件dir1.tar.gz

         tar -zxvf  dir1.tar.gz -C(大写的)  /root     解压到指定的/root目录

    eg: tar -cvf bak.tar  .    将当前目录的文件打包为bak.tar

    eg: tar -xvf bak.tar   解压

    eg: tar -zcvf bak.tar.gz  bak.tar   或 gzip  bak.tar    使用gzip将打包文件bak.tar压缩为bak.tar.gz

    eg: tar -jcvf bak.tar.bz2  bak.tar  或 bzip2 bak.tar   使用bzip2将打包文件bak.tar压缩为bak.tar.bz2

    eg: tar -rvf bak.tar /etc/password     将/etc/password追加文件到bak.tar中(r)

    eg:tar -cjvf test.tar.bz2  test  生成test.tar.bz2的压缩文件

    eg:tar -xjf test.tar.bz2        解压

    最常用:   tar + gzip

    tar –zcvf 压缩   

    tar –zxvf  解压

    补充:

    1,文件路径, 压缩包带文件路径

    2,源文件是保留的,不会被删除

    系统关机命令:

    shutdown  [选项] 时间    

    选项:  -c: 取消前一个关机命令  

    -h:关机  

    -r:重启

    eg:

    shutdown -h  now  立即关机     shutdown  -h  20:30   定时关机

    其他关机命令   halt     poweroff     init 0

    其他重启命令  

    reboot  重启系统    reboot -h now    立即重启

    init 6

    注意:生产环境中,关机命令和重启命令谨慎执行。

    Linux中的一些快捷键:

    ctrl + c(停止当前进程)

    ctrl + z  挂起当前进程,放后台

    ctrl + r(查看命令历史) history

    ctrl + l(清屏,与clear命令作用相同)

    方向箭头  上 下 可以查看执行过的命令

    ctrl + a  行首 ctrl + e 行尾

    ctrl + k  清除   ctrl+ w 清除单词

    VIM文本编辑器:

    vim/vi是Unix / Linux上最常用的文本编辑器而且功能非常强大。

    VIM工作模式

    插入命令

    a 在光标附加文本

    i  在光标插入文本

    o 在光标下插入新行

    定位命令

    :set nu  设置行号

    :set nonu  取消行号

    gg  到第一行

    G  到最后一行

    nG 或 :n  到第n行

    保存和退出命令

    :w  保存修改

    :wq 保存修改并退出

    shift+zz(ZZ)快捷键,保存修改并退出

    :q!  不保存修改退出

    不保存并退出:

    1, 有修改,但是修改后的内容是不保存的

    2, 有突发情况,导致窗口退出。修改文件之后,直接删除同名的.swp文件

    删除命令

    x  删除光标所在处字符   nx 删除光标所在处后n个字符

    dd  删除光标所在行,ndd删除n行

    :n1,n2d  删除指定范围的行(eg :1,3d   删除了123这三行)

    dG  删除光标所在行到末尾的内容

    D删除从光标所在处到行尾

    复制和剪切命令

    yy、Y  复制当前行

    nyy、nY  复制当前行以下n行

    dd  剪切当前行  ndd剪切当前行以下n行

    p、P  粘贴在当前光标所在行下  或行上

    替换和取消命令

    r  取代光标所在处字符

    R(shift + r)  从光标所在处开始替换字符,按Esc结束

    u  undo,取消上一步操作

    ctrl+r  redo,返回到undo之前

    搜索和替换命令

    /string  向搜索指定字符串   搜索时忽略大小写 :set ic

    ?string  向搜索指定字符串

    n  搜索字符串的下一个出现位置,与搜索顺序相同

    N(shift + n)  搜索字符串的上一个出现位置,与搜索顺序相反

    :%s/old/new/g  全文替换指定字符串

    :n1,n2s/old/new/g  在一定范围内替换指定字符串 

    % 指全文,s 指开始,g 指全局替换

    起始行,终止行s/要替换的字符串/替换的新的字符串/g    c 询问确认

        eg: :%s/ftp/yang/g    全局替换,把ftp替换为yang

        eg: :41,44/yang/lee/c   从41行到44行,把yang替换为lee,询问是否替换

        eg: :41,44/yang/lee/g   同上,不询问,直接替换

        eg: :%s//root//ROOT/g  把/root替换为/ROOT

        eg: :%s#/bin/bash#/bin/ksh/g        把/bin/bash全部替换为/bin/ksh

    使用替换命令来添加删除注释

    :% s/^/#/g 来在全部内容的行首添加 # 号注释

    :1,10 s/^/#/g 在1~10 行首添加 # 号注释

    vi里面怎么查命令??

    :!which cp

    vi里面怎么导入命令的结果?

    :r !which cp

  • 相关阅读:
    对象类JavaSist之ClassPool
    文件修改如何简单修改Android的so文件
    进程匿名APUE学习进程间通信(1)
    添加空间ShareSDK 微博空间分享
    文件学习IOS学习:常用第三方库(GDataXMLNode:xml解析库)
    文件androidAndroid 源码文件结构
    sql数据库java连接sqlserver2005数据库
    文件数据IOS学习:ios中的数据持久化初级(文件、xml、json、sqlite、CoreData)
    拼接字符SQL语句拼接 最后一个字符多出 处理方式
    目录服务器Linux Ubuntu上架设FTP
  • 原文地址:https://www.cnblogs.com/1012hq/p/11138350.html
Copyright © 2020-2023  润新知