zoukankan      html  css  js  c++  java
  • linux常用指令学习记录

    前言

    本文主要为学习贴,用来记录一些

    linux上的常用指令

    以供参考。

    文件内容查看

    cat

    从上往下阅读文件内容

    
    cat [-AbEnTv] ${FILE_NAME)
    cat -n /etc/issue 将该文件的内容输出到标准输出中,并显示行号
    cat file1 file2 > file3  将file1 file2的内容依次添加到file3当中
    

    tac

    从下往上阅读文件内容,用法同cat

    nl

    添加行号打印,默认情况下空白行不显示行号

    
    nl [-bnw] ${FILE_NAME}
    nl -b a file1 即使空白行也显示行号
    nl -b a -n rz file 空白行也显示行号,并且行号在字段的最右方显示,且行号不用加0对齐
    

    more/less

    一页一页翻动文件。

    
    more ${FILE_NAME} 向下翻动文件
    less ${FILE_NAME} 向上/下翻动文件
    

    head/tail

    取文件的前几行或者最后几行内容

    
    head/tail [-n number] ${FILE_NAME}
    head -n 10 file 读取文件前十行的内容
    tail -n 10 file 读取文件后十行的内容
    head -n -10 file 不打印文件后十行内容
    tail -n +100 file 只打印100行以后的内容
    tail -f file 打开文件并持续更新,直到ctrl+c才退出。这个常用于查看最新的日志
    

    命令与文件查询

    which

    寻找执行文件,查找命令的完整文件名

    
    which [-a] command #-a会将所有由PATH目录中可以找到的命令均列出,而不只第一个被找到的指令
    which ifconfig #在非root用户下会查找不到,因为ifconfig位于/sbin/ifconfig下,而非root用户的PATH中不包含该路径,所以找不到
    which cd #找不到,因为cd为bash的内置命令
    

    whereis

    根据文件名寻找文件,查找文件的完整文件名

    
    whereis [-bmsu] 文件或目录名
    -b 只找二进制文件
    -m 只找在manual路径下的文件
    -s 只找source源文件
    -u 查找不在上述选项中的其他特殊文件
    

    locate+updatedb

    locate会根据/var/lib/mlocate内的数据库记载,找出用户输入的关键字文件名,即所有包含该关键字的文件都将被输出。但是因为数据库的更新一般为一天一次,所以如果需要查找新的内容,需要用updatedb指令更新数据库,updatedb会根据/etc/updatedb.conf去查找硬盘内的文件名,并更新数据库文件

    
    locate [-ir] keyword
    -i 忽略大小写差异
    -r keyword可以为正则表达式
    

    find

    查找文件,磁盘查找,支持通配符

    
    find [PATH] [option] [action]
    find / -mtime 0 #查找24小时内被修改过的文件
    find /etc -mtime 3 #查找3天前的24小时内被修改的文件
    find / -mtime +3 #查找3天前(不含3天本身)被更改的文件
    find / -mtime -3 #查找3天内被更改的文件
    find / -user name #查找用户名为name的文件
    find / -group name #查找群组名为group的文件
    find / -nouser #查找不属于任何用户的文件,可能出现于网络文件,或是已经被删除的用户创建的文件
    find / -name filename #查找文件名为filename的文件
    find / -type TYPE #查找某一类文件,f:正规文件,b:设备文件,d:目录,l:连接文件,s:socket,p:FIFO
    

    压缩与打包

    常见压缩扩展名

    
    *.Z: compress程序压缩文件
    *.gz: gzip程序压缩文件
    *.bz2: bzip2程序压缩的文件
    *.tar: tar程序打包的文件,但没有被压缩
    *.tar.gz: tar程序打包的文件,其中经过gzip的压缩
    *.tar.bz2: tar程序打包的文件,其中经过bzip2压缩
    

    gzip

    gzip可以解开compress,zip与gzip等软件所压缩的文件。gzip压缩后,源文件会被删除,被替代为.gz的压缩文件。

    
    gzip [-cdtv#] 文件名
    -c: 将压缩的数据输出到屏幕上,可通过数据流重定向来处理
    -d: 解压缩的参数
    -t: 可以用来校验一个压缩文件的一致性
    -v: 显示压缩比等信息
    -#: 压缩等级,-1最快,-9最慢但压缩程度最高,默认-6
    
    gzip -d filename: 会将压缩文件解压缩,并删除压缩文件
    

    tar

    
    tar [-j|-z] [cv] [-f 新建的文件名] filename #压缩
    tar [-j|-z] [xv] [-f 打包文件名] [-C 目录] #解压缩
    -c: 新建打包文件,可配合v查看过程中被打包的文件名
    -x: 解打包或解压缩功能,可以搭配-C在特定目录中解开
    -j: 通过bzip2的支持进行压缩和解压缩
    -z: 通过gzip支持压缩和解压缩
    -v: 将正在处理的文件名显示出来
    -C: 在特定目录中解压缩
    -p: 保留备份数据的原本权限和属性
    -P: 保留绝对路径,一般情况下都是相对路径,防止数据覆盖
    --exclude=FILE: 在压缩过程中不要讲FILE打包进去
    --newer: 打包ctime和mtime在日期后面的文件
    --newer-mtime:打包mtime在日期后面的文件
    tar -zcv -f filename.tar.gz filename #压缩打包为filename.tar.gz
    tar -zxv -f filename.tart.gz -C 欲解压缩的目录 filename
    

    原文地址:https://segmentfault.com/a/1190000016598226

  • 相关阅读:
    Python学习笔记(三)
    Python学习笔记(二)
    GDUFE ACM1159
    GDUEFE ACM1003 练手
    GDUFE ACM1033
    GDUFE ACM1128
    GDUFE ACM1002
    EDUFE ACM1050
    GDUFE ACM1007
    GDUFE ACM1003
  • 原文地址:https://www.cnblogs.com/lalalagq/p/9749357.html
Copyright © 2011-2022 走看看