zoukankan      html  css  js  c++  java
  • Linux常用命令表

    command(指令) [-options(选项)] arg(参数) agr2 ...
    // 一条指令的三要素之间要用空格隔开
    // 多个命令要使用`;`隔开
    // 如果一条命令不能再一行写完,在行尾使用`\`标明该条指令未结束
    
    Tab键
        // 按一下tab键表示文件名补齐
        // 按两下tab键表示命令补齐
    
    
    基本常用
        man 命令名称 # 查询手册
            - man 查看常数代表查找范围 例如c库 man 3 xxx
            
        echo将后边的文本显示出来 默认输出在屏幕上
        # echo {num1..num2} 类似python range(num1,num2)  在num1前加上前缀类似字符串拼接 例如 echo{01,10} ->00,01...10 或 echo num{1,5} -> num1,num2...num5
            - n        # 表示取消输出每一行结尾的换行符
            - e        # 让echo支持 
     等特殊转义字符
            - A    # 显示各种特殊符号(换行等)
    
        pwd # 当前目录
    
        ls(list)    /name    # 查看name中的文件
            - a            # 查看隐藏文件
            - l            # 查看name中详细的文件
            - F            # 在目录文件后加 "/" 在其他文件类型后加各种符号区分
            - t            # 按照文件的修改时间进行排序
            - r            # 倒叙排列
            - h            # 人类可读
            - i            # 查看inode值
            - lh        # 查看文件大小等
            - lhi        # 每一列的含义(以空格拆分每一列)分别是     inode号码  文件的类型 文件权限(.与selinux有关)  文件的硬链接数量 文件的所有者 用户属于的家庭 文件的大小 文件的修改时间 文件名(文件名不是文件的属性)
            
        history [num]    # 显示历史命令 如果指定num则显示固定的行
        
        `其他命令` # 命令置换
            例如: ls `pwd`  # 先执行pwd的输出 然后再执行 ls pwd输出
            
    
        cp(copy)     # 复制    cp/name/files /目标文件夹 # 赋值files文件到目标文件夹
    # 备份 cp/name/files /name/files.bak(后缀随便加) 原地备份
            - r     # 递归复制目录及其目录下的内容
            - p     # 复制的时候保持属性不变
            - a        # 复制所有 类似 -p,d,r
            
        
        mv(move)    # 移动 mv /name/ /目标/ 将name文件夹移动到目标文件夹    
            # 可以进行改名操作  mv old_name new_name
    
    
        rm(remove)    # 删除 rm/files.txt  -> y/n    删除files文件 -> 删除/取消
            - f     # 删除文件不提示
            - r        # 递归删除目录及其目录下的内容
            - rf    # 递归删除目录及其目录下的内容不提示
            
    
    用户相关
        whoami # 查看当前用户
        hostname # 查看当前主机名
            
        useradd 用户名        # 添加用户
            -d    指定用户家目录
            -g    指定用户组
            -G    指定用户的附加组
            -s    指定登录后的shell
            -u    指定创建用户的uid
            -r    创建一个系统组  例如 useradd -r xxx 创建一个xxx系统用户 uid是根据系统分配倒序 centos7 从999-1 centos6 从499-1
            
    
        usermode 用户名          # 更改用户的属性 与添加用户参数类似
            -l 新用户名 旧用户名 # 改名
            -m   # 如果没有就创建
         
        
        userdel  用户名        #  删除用户
            - f 强制删除用户
            - r 同时删除用户以及家目录
    
        groupadd 用户组名        # 创建用户组
        groupdel 用户组名         # 删除用户组
        
        id 用户名                # 查看用户信息也能查看用户是否存在以及属于哪个用户组
        passwd 用户名        # 添加密码、修改密码
        su(switch user)    -  用户名                # 切换用户
        
        
        
    漏斗家族:
        |     # 做数据传递使用  将 `|`左边指令的输出当做右边指令的输入
        >(1>)# 标准输出重定向    先把文件内容清空 然后再将内容放在文件的最后一行
        >>    (1>>)    # 追加重定向    把内容放在文件的最后一行
        1 代表标准输出 执行正确的内容才会通过漏斗
        2>            # 标准错误重定向
        2>>        # 错误追加重定向
        &>        # 不论正确与否都输出
        &>>        # 不论正确与否都追加
        >>/name/files 2>>/name/files    # 同时记录文件的对错内容 或使用(2>&1)
        <            # 输入重定向
        <<            # 追加输入重定向
        
    
    文件相关
        file    /name/files     # 显示文件的详细类型
            分为:
                executable        # 命令
                text                # 文本文件
                tar                # 压缩包
            
        wc         # wc -l /name/files
            -w     # 统计单词数 可以配合 ls | wc -w 查看文件数
            - l        # 统计文件的信息 用来获取行数等
        
        cat /name/files.txt     查看文件的内容 # 适合使用小文本
            - n            # 显示文件内容及对应行号
        
        mkdir(make directory)    /name        # 创建目录
            - p         # 可以一次性创建多层目录
    
        touch /name/files    # 在name文件夹下创建files文件 或 更新文件的时间戳 # 可以同时创建多条
        
        
        cp(copy)     # 复制    cp/name/files /目标文件夹 # 赋值files文件到目标文件夹
    # 备份 cp/name/files /name/files.bak(后缀随便加) 原地备份
            - r     # 递归复制目录及其目录下的内容
            - p     # 复制的时候保持属性不变
            - a        # 复制所有 类似 -p,d,r
            
        
        mv(move)    # 移动 mv /name/ /目标/ 将name文件夹移动到目标文件夹    
            # 可以进行改名操作  mv old_name new_name
    
    
        rm(remove)    # 删除 rm/files.txt  -> y/n    删除files文件 -> 删除/取消
            - f     # 删除文件不提示
            - r        # 递归删除目录及其目录下的内容
            - rf    # 递归删除目录及其目录下的内容不提示
            
        head        # head files.txt         取出文件的前几行 默认为十行
            - n(num)        # 取出前num行
    
        tail        # tail files.txt            取出文件的后几行 默认为十行
            - n(num)        # 取出后num行 
            - f                # 显示文件实时更新的内容 也可以直接使用tailf
        
        ln            # 创建硬链接 # 不能对目录创建硬链接但是可以创建软链接
            - s        # 创建软链接    ln -s  /name/files  软链接name # 软链接存放着原文件的位置,原文件被删除软链接失效
                # 添加快捷方式 例如 python  ln -s /opt/python36/bin/python3.6  /usr/local/sbin/python3.6 # 指令目录 # 就不用单独在PATH目录去添加路径
                # Ps:当源文件变化时,软链接和硬链接都会跟着变化
    
        lsof         # lsof找到系统所有的文件
                # lsof |grep delete    # (delete标记 这个文件硬链接数量为0,进程调用数不为0) 重启返回第一列软件名称
                # 重启对应软件  软件的绝对路径 restart
        
        
        tar        # 创建查看解压压缩包 tar中参数可以不加 '-'
            tar zcf              压缩包存放的位置      压缩的目标    # zcvf 创建压缩包    
            tar ztf/tf        压缩包的位置            # ztf 查看压缩包
            tar zxf/xf         压缩包的名字    -C    指定的路径        # 需要先进入压缩包的位置 指定路径可以不写默认在同目录下解包
        
            - z        # 通过gzip压缩工具进行压缩 压缩.gz后缀
            - c        # 表示create 创建压缩包
            - v        # 显示压缩或解压的过程
            - f        # 表示file 接上压缩包的名字 # 要写到最后
            - t        # 表示list 显示压缩包的内容
            - x        # 解压
            - C        # 解压到指定目录
            -- exclude = /name    # 需要排除的name文件/文件夹等
        
        
        unzip     文件name    # 解压 .zip文件
            yum install -y unzip zip
    
        
        gzip        # 用来压缩较大文件(以60%-70%来节省空间)
            gzip *     # 压缩当前目录所有文件为.gz文件  # 可以后跟name
            gzip -dv *    # 把上列中每个压缩的文件解压,并列出详细信息
        
            gzip -l * 显示压缩文件的信息,并不解压
        
            tar -cf my.tar my_first.py
            
            gzip -r my.tar      # 压缩一个tar备份文件,扩展名是tar.gz
    
                -d        # 解开压缩文件
                -f        # 强行压缩文件
                -h        # 在线帮助
                -l        # 列出压缩文件的相关信息
                -L        # 显示版本与版权信息
                -r        # 递归处理,将制定目录下的所有文件及子目录一并处理
                -v        # 显示执行过程
                -C        # 指定目录
                -z        # 调用gzip的压缩解压格式
        
    
            修改权限:
                chmod(change mode) 
                # chmod num(以权限对应的数字给与权限 分为所有者权限(u),家人权限(g),陌生人权限(o)) 需要修改权限的文件
                # chmod 需要修改权限者编码(u,g,o)+-=权限码(r,w,x,-) 需要修改权限的文件
                
            修改所有者
                chown(change owner)
                    # chown 属主 文件等需要更改属主的内容
            
            修改所有组
                    # chgrp 组名 文件等需要更改属组的内容
            
            
            umask        # 控制系统默认权限的命令
                            # 计算 对于目录 777 直接减去umask 对于文件 666 减去 umask 如果 umask某一位是奇数,减完之后奇数位需要加1
                            # umask num     # 修改umask值
                            
            文件系统的属性(文件属性)
                lsattr        # 查看属性 权限    lsattr 文件
                    e        # 默认
                    a        # 只能追加
                    i        # 不可修改
                    
                chattr    # 设置属性(加锁,属性则为钥匙)    chattr +-属性    文件
    
    
        
    
    进程管理
        
        ps  
            -ef  # 查看linux当前进程  # 可以配合 | grep 等进行筛选
            -a        # 显示所有进程
            -u        # 用户以及其他详细信息
            -x        显示没有控制终端的进程
            状态补充:
                R    正在执行
                S    阻塞
                T     暂停
                Z  不存在但暂时无法消除
                D    不可中断的静止
                <    高优先级的进程
                N    低优先级的进程
                L    有内存分页分配并锁在内存中    
                
        top        # 查看当前进程,任务详情,以及系统负载等详细信息
        
        renice  # 调整任务优先级
            -n num PID    # NI值调节    
        
        kill 进程pid(在ps -ef中)      # 杀死进程
            -9 # 强制终止信号(危险命令,强制杀死进程,以及相关依赖)
    
        pkill    进程名称    # 支持名称杀死所有有关进程                
            
            
            
    
    网络相关
        ifdown ethx            # 关闭网卡
        ifup ethx            # 开启网卡
        ifconfig    [指定网卡]            # 显示/查看网卡信息-ip地址
            # 如果没有ifconfig  运行 yum install net-tools
            # ethx 网卡
            # ifconfig 网卡name ip netmask 子网掩码  // 设置网卡name的ip以及子网掩码
            
            
            
    系统维护(详情上文有)
        /etc/passwd   存放用户信息 
        /etc/group        存放组信息
        /etc/adduser.conf    新增用户配置信息
        /etc/skel  新用户公用的配置文件
        
    
        /etc/interfaces # ip地址相关
        /etc/hosts 
        /etc/resolv.conf
        
    Songzhibin
  • 相关阅读:
    python简介
    Error:unknown filesystem
    Ubuntu 12.04 相关问题
    C/C++版数据结构之链表<一>
    C/C++版数据结构之链表<二>
    C/C++版数据结构之树<二>
    C/C++版数据结构之树<一>
    C/C++版数据结构之链表<三>
    C/C++版数据结构之排序算法
    php 操作文件简单例子
  • 原文地址:https://www.cnblogs.com/binHome/p/12817193.html
Copyright © 2011-2022 走看看