• 常用Linux命令(长期更新)


    有些命令如果不常用,老是记不住,每每用到总还要去查,特此将一些命令记录在此:

    (0)按指定时间删除文件

    find target_dir -type f -mtime +3 -exec rm {} ;
    

    -mtime -n or +n:按照文件的更改时间来查找文件,  -n表示距现在n天以内, +n表示距现在n天以前

    -mmin:分钟

    (1)解压缩打包

    解压(已打包的文件):
    tar -xvzf filename.tar.gz      #解压 filename.tar.gz 到当前文件夹 -C可以指定解压的目录
    tar -xvjf filename.tar.bz2     #解压 filename.tar.bz2 到当前文件
    tar -xvf filename.tar          #解压 filename.tar 到当前文件夹(tar结尾表示没有被压缩)
    xz -d filename.tar.xz #解压 filename.tar.xz 成filename.tar,在用上面的命令解压
    如果要解压rar格式的压缩包,需要安装rar,ubuntu下:sudo apt-get install rar。然后解压:rar x filename.rar(注意是x不是-x)

     解压(未打包的文件)

    gzip -d filename.gz     #解压gz格式的文件,等价于: gunzip filename.gz

    bzip2 -d filename.bz2   #解压bz2格式的文件,等价于: bunzip2 filename.bz2

    bzip2 -d filename.bz    #解压bz格式的文件,等价于: bunzip2 filename.bz

    unzip filename.zip      #解压 filename.zip 到当前文件夹 -d可以指定解压的目录

    unrar filename.rar      #解压 filename.rar 到当前文件夹

    打包(不压缩):

    tar -cvf filename.tar .

     打包并压缩:

    tar -cvzf filename.tar.gz .    #将当前目录下的文件及文件夹使用 gzip  压缩
    tar -cvjf filename.tar.bz2 .   #使用 bzip2 压缩
    zip file.zip .                 #使用 zip 压缩

     压缩文件:

    gzip filename          #使用 gzip 压缩
    bzip2 -z filename #使用 bzip2 压缩
    zip filename.zip fileNeedToCompress #递归压缩: -r
    rar filename.rar fileNeedToCompress #使用 rar 压缩

    (2)统计文件数目(不包括隐藏文件/文件夹)

    ls -l | grep "^-" | wc -l                #统计当前目录下文件的数目
    
    ls -lR | grep "^-" | wc -l               #统计当前目录下文件的数目,包括子目录里的
    
    ls -l | grep "^d" | wc -l                #统计当前目录下文件夹(也就是目录)的数目
    
    ls -lR | grep "^d" | wc -l               #统计当前目录下文件夹(也就是目录)的数目,包括子目录里的

     (3)du & df

    (区别:df可以看到已经删除的文件。删除一个文件的时候,这个文件并没有马上消失,后面系统会根据某些策略释放掉这些删除的文件)

    du(disk usage):查看特定目录的空间使用情况,即递归显示当前目录及其子目录所占用的数据块(先切换到指定目录下,或者du directoryPath。注意:所指定目录后面必须加上/

    du -sh                  #只显示目录总大小
    
    du -h --max-depth=1     #列出当前目录下所有子目录的大小(一层)
    
    du -ah --max-depth=1    #包括目录和文件

    df(disk free):查看文件系统的磁盘空间使用情况

    df -h   #以更可读的方式显示结果
    -T #显示文件系统类型信息
    --total #会有一个汇总行
    -t #指定要查看的文件系统
    -x #排除指定的文件系统。如果有双系统(Linux+Windows),默认会显示整个磁盘的使用情况,使用-x选项,可以排除Windows,只显示Linux下磁盘空间使用情况。

    (4)size

    显示目标文件的各个段的大小,dec和hex分别表示义十进制和十六进制表示的三个段的总长度。

    (5)

    ctags –R * 
    gtags    #需要安装 GNU GLOBAL
    htags    #生成HTML格式的索引文件

    (6)chown 修改文件或文件夹的拥有者或者属组

    chown [-R] user:group filename
    -R 递归修改(如果修改的是目录,通常加上-R参数)
    user和group之一可以为空,如
    chown user filename
    chown :group filename(等价于chgrp group filename)

     (7)grep

    grep '要搜索的内容' file [file2 file3 ……]
    command [options] | grep ……
    -i选项可以忽略大小写
    -r递归搜索,通常后面跟目录名,默认显示文件名,-h可以禁止显示文件名
    -v不匹配,或者叫反转匹配,即输出不包含执行内容的行
    -l只显示匹配到的文件名

     (8)

    ps -e|grep process_name  查看并筛选跟process_name有关的进程,该进程名可以是进程的名字或者名字的一部分。

     (9)rpm

    RPM的主要功能是安装、卸载、升级、管理和查询软件。

    rpm -qa                    #查询已安装的软件信息
    rpm -qa | grep xxx #通常这样使用,查询与xxx相关的软件包

    dpkg:

    dpkg -l|grep softwareName  #查看已安装软件
    dpkg -i packageName.deb    #安装软件
    dpkg -L package # 列出与该包相关联的文件
    查看已安装软件版本号(上面那条命令可以,下面这条也可以,不过需要安装sudo apt-get install apt-show-versions):
    apt-show-versions –p softwareName

    (10)apt-get & dpkg

    apt-get remove packagename             #卸载一个已安装的软件包(保留配置文档)
    apt-get remove --purge packagename     #卸载一个已安装的软件包(删除配置文档)
    dpkg -r package                        #移除软件(保留配置文档)
    dpkg -P package                        #移除软件(不保留配置文档)
    
    ->
    apt-get autoremove packagename         #删除包及其依赖的软件包 
    apt-get autoremove --purge packagname #删除包及其依赖的软件包+配置文件,比上面的要删除的彻底一点
    apt-get autoclean #删除已卸载掉的软件的备份

    apt-get clean #这个命令会把安装的软件的备份也删除(包缓存中的所有包),但是这样不会影响软件的使用。

    ->

    apt-get update  #更新源(重新获取软件包列表)
    apt-get upgrade #更新已安装的包
    apt-get source package  #下载该包的源代码

    ->

    apt-cache dependspackagename   #了解使用依赖
    apt-cache rdepends packagename #是查看该包被哪些包依赖
    apt-cache search package       #搜索软件包
    apt-cache show package         #获取包的相关信息,如说明、大小、版本等

     (11)需要安装sz/rz

    sz:发送文件到本地

    sz filename

    rz:上传本地文件到服务器

    rz
    

    (12)

    systemctl list-unit-files | grep mysqld

    (13)

    command --help 

    man command

     

    man:

      回车:向前滚动一行

      空格:向前滚动一屏

      f:向前滚动一屏

      b:向后滚动一屏

      q:退出

  • 相关阅读:
    hdu 5648 DZY Loves Math 组合数+深搜(子集法)
    hdu 5647 DZY Loves Connecting 树形DP
    hdu 4550 卡片游戏 贪心
    hdu 5646 DZY Loves Partition 二分+数学分析+递推
    hdu 2196 Computer 树形DP
    poj 2342 Anniversary party 树形DP入门
    Vijos P1003 等价表达式 随机数+单调栈
    【BZOJ】1044: [HAOI2008]木棍分割 二分+区间DP
    【BZOJ】1925: [Sdoi2010]地精部落 DP+滚动数组
    【BZOJ】1012: [JSOI2008]最大数maxnumber 树状数组求区间最值
  • 原文地址:https://www.cnblogs.com/vdvvdd/p/5053378.html
Copyright © 2020-2023  润新知