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

     
    Ctrl+z 暂停命令
     
     
    ls
     
    linux里面  文件和文件夹叫文件
     
    -h  数字以M或G为单位
    -a  显示全部文件  包括隐藏文件
    -l   显示文件详细信息
    -R  大R    递归显示子目录结构
    -ld  [文件名]显示目录和链接信息
     

    file  [文件名]   显示文件的类型和信息

    touch   创建空白文件
    如果创建一个已经存在的文件会更新文件的修改时间

    cd   目录切换
    ..  上一级目录
    .  当前目录
    ~  用户家目录
    -   上一个工作目录

    pwd  当前的工作目录cvd
     

    cp  源文件(夹) 目标文件(夹)
    -r   (用于复制文件夹)递归复制整个目录
    -v   显示详细信息
    -p   不改变文件属性

    mv   移动、重命名
    mv  源文件(夹)   目标文件(夹)
    移动到当前文件夹可以重命名
    -p

    rm
    删除文件(夹)
    -r 删除文件夹(递归删除)
    -i 交互式
    -f  强制删除,没有警告提示

    mkdir 创建目录
    -p递归创建
    rmdir  删除一个空的目录
    rm -r  删除一个非空目录

    文件系统目录
    bin   可执行文件(叫命令)
    boot  引导目录(和内核)
    dev   设备文件(设备在linux被抽象为文件)
    etc    所有配置文件
    home  家目录(每一个用户都有一个家目录 ),保存用户的文件、
    lib     库文件(相当于windows的dll)
    media   挂载外设用的比如光盘和USB盘
    opt   通常用来装大型软件
    proc   系统的实时信息(只存在内存中)第次启动都会创建: 可以通过查看里面的文件内容,得到系统的信息/数字文件夹代带一个进程/
    sbin   只有root用户才能执行的文件(或叫命令)super bin
    sys  系统底层的信息
    tmp   临时目录,里面的内容会自动删除
    usr   一般的软件装在这里
    var  保存一些会经常变化的信息,里面有日志,邮件
     


    时间
    date
    重新定义输出格式   date +%Y--%M--%D     --可以改成别的   前面要加+号
    date -s "20:20:20"    修改时间
    hwclock (clock)   显示硬件时针时间
    cal     显示日历
    uptime  查看系统的运行时间
     

    查看文件的内容
    命令后加文件
    echo "要输出的内容"
    cat  显示文件的内容
    more 翻页显示文件的内容(只能向下翻页)
    less  翻页显示文件的内容(带上下翻页)
    head  用以显示文件的头几行(默认10行)  head -n 3 显示3行
    tail  显示文件的末尾几行(同上)    (-f  追踪显示文件更新     用来查看日志,文件更新内容也会更新)

    查看硬件信息
    lspci  查看PC设备  -v  查看详细信息
    lsusb 查看USB设备  -v同上
    lsmod  查看加载的模块(模块=windows驱动)

    关机、重启
    shutdown
    -h  关闭
    -r   重新启动
    例:
    shutdown -h now   立即关机
    shutdown -h +10  10分钟后关机
    shutdown -h 23:30    23:30关机
    shutdown -r now  立即重启
    poweroff  立即关机
    reboot  立即重启

    归档、压缩
    zip  new.zip myfile  把myfile压缩为new.zip
    unzip myzip.zip 解压缩
    gzip myfile  压缩(gzip格式)
    if
    tar 用以归档文件,不是压缩命令
    tar -cvf  归档后的文件(out.tar)  要归档的文件(夹)(/etc)
    tar -xvf myfile.tar  解开归档的文件
    tar -cvzf backup.tar.gz /etc
    -z 参数将归档后的归档文件进行gizp压缩以减少大小
    tar -zxvf file.tar.gz  解压缩归档压缩的文件

    查找locate
    locate  快速打找文件和文件夹,此命令需要建立数据库,此命令是从数据库中查找文件,速度比较快,每天更新一次,只能通过关键字查找
    locate  keyword
    updatedb 更新数据库
     
    find 高级查找文件(夹)
    find 查找位置 查找参数
    查找位置:. 表示当前目录  / 全部文件
    find  / -name *.conf  查找文件名为.conf格式的
    find . -perm 777  -perm表示权限 为777的文件
    find . -type d   文件类型为d (文件夹)
    find . -name "a*" -exec ls -l {} ;   -exec 表示执行,将找到的结果传给ls -l执行, 除了ls -l其他的都是固定格式
    find 的查找条件 -name  名字  -perm权限  -user属于某个用户  -group属于某个组  - ctime 基于时间 -type类型 -size 基于文件大小





    VIM
    VIM 命令直接启动
    VIM 是VI的增强版,特别是支持GUI
    vim 目标文件的路径
    如果目标文件存在,则打开,如果不存在则创建

    VIM 三种模式 :
    命令模式(常规模式)
    启动后,默认的模式,任何模式按esc回到命令模式,可以完成选择、复制、粘贴、撤销等操作
    插入模式
    命令模式中按“i",可进入,在插入模式可以输入编辑文本内容,esc可以返回命令模式
    ex模式
    命令模式中按 “:”可进入,进入ex模式,光标会移动到底部,在这里可以保存修改或退出VIM
     
     
    命令模式:
    i  在光标前插入文本
    o 在当前行的下面插入新行
    dd  删除整行
    yy  将当前行的放入缓冲区(复制)
    n+yy  将n行的内容放入缓冲区(复制n行)
    p   将缓冲区中的文本放入光标后 (粘贴)
    u  撤销上一个操作
    r   替换当前字符
    /   查找关键字
     
    EX模式
    :w  保存当前修改
    :q  退出
    :q!   强制退出,不保存修改
    :x    保存并退出 相当于  :wq
    :set number   显示行号(或 :set nu)
    :!   系统命令  执行一个系统命令并显示结果
    :sh   切换到命令行,使用ctrl+d 切换回vim









    FDISK 分区工具
     
    Linux 所有设备都被抽象为一个文件,保存为/dev目录下
    硬盘设备名称一般hd[a-z]或sd[a-z]   ([a-z])为分区号,, 如hda,hdb,sda,sdb
    IDE 设备为hd[a-z],SATA,SCSI,SAS, USB 设备为sd[a-z]
     
    fdisk -l -h   查看硬盘信息(-h用单位表示 )
    fdisk /dev/sda    对/dev/sda硬盘进行分区操作并进入分区界面
    partprobe   让内核更新分区表
     
    文件系统
     
    操作系统通过文件系统管理文件及数据,磁盘或分区需要创建文件系统之后才能够为操作系统使用,创建文件系统的过程
    又称之为格式化
    没有文件系统的设备为裸(raw)设备
    MKE2FS 用来创建文件系统
    mke2fs -t ext3 /dev/sda2
    参数:
    -b blocksize  指定文件系统块大小
    -c   建立文件系统时检查坏损块
    -l label   指定卷标
    -j   建立文件 系统日志
    -t  文件类型
     
    DUMPE2FS    查看分区的文件系统信息
    dumpe2fs /dev/sda1
     
    E2LABEL   为文件系统添加标签
     
    e2label /dev/sda1 tool  将sda1的标签改变  tool
     
    FSCK  检查差修复损坏的文件系统
    fsck /dev/sda2
    -y  不提示而直接修复
    对于识别为文件的损坏数据(文件系统无记录),fsck会将该文件放入lost+found
    系统启动时会对磁盘进行fsck 操作



    文件系统挂载
     
    磁盘或分区创建好文件系统后,需要挂载到一个目录才能够使用。windows会自动挂载,比如C盘,D盘
     
    mount /dev/sdb1(要挂载的分区) /mnt(挂载点,可以是任务目录)
    参数:
    -t 指定文件系统的类型(默认是自动读取的)
    -o 指定挂载的选项:
    ro, rw  以只读或读写形式挂载,默认是rw
    sync 代表不使用缓存,直接写入磁盘
    async 使用缓存,默认是async
    noatime 每次访问文件时不更新文件的访问时间
    atime  更新文件的访问时间
    remount  重新挂载文件系统
    (多个选项用,分开)
    mount -o remount, ro /dev/sdb1 /mnt  重新挂载并设置为只读
     
    *mount -l  查看硬盘的挂载点
     
    umount  卸载已挂载的文件系统,
    umount /dev/sda3  =  umount /mnt
    如果出现device is busy报错,表示文件系统正在被使用,无法卸载,
    查看文件系统的进程
    fuser -m /mnt
    正在被使用的文件
    lsof /mnt
     
    自动挂载
    配置文件/etc/fstab用来定义需要自动挂载的文件系统,文件中第一行代表一个挂载配置,格式如下:
    /dev/sda3            /mnt   ext4          defaults    0 0
    需要挂载的设备   挂载点   文件系统  挂载选项     dump,fsck相关选项
    (mount -a命令会挂载所有fstab中定义的自动挂载项)



    Linux 的帮助信息
    命令加 -h 或 --help
    ls --help   显示ls 的帮助信息
    如果帮助信息左下角显示 ":" 表示可以查询 输入“/内容”
    man + 命令 显示命令的帮助信息
    -k  查找带关键字的所有命令

    用户基础
    使用linux时,需要以一个用户的身份登入,一个进程也需要以用户的身份运行,用户的权限可以限制使用者或进程可以使用、不可以使用哪些资源。
    -每个用户拥有一个UserID,操作系统实际使用的是用户ID,而非用户名
    -每一个用户属于一个主组,属于一个或多个附组
    -每一个组拥有一个GroupID
    -每一个进程以一个用户身份运行,并受该用户可访问的资源限制
    系统中的每一个文件都有一个所属用户及组
     
    用户ID为32位,从0开始,用户ID限制在60000以下:
    用户分为三种:
    -root 用户  (ID为0的用户为root用户)
    -系统用户  (1-499)
    -普通用户  (500以上)
    *有些设备也有自己的ID,被当作用户
    使用ID命令可以显示当前用户的信息
    相关文件 :
    -/etc/passwd    用户的信息
    -  /etc/shadow   保存用户的密码
    - /etc/group  保存组的信息
    查看登录的用户:
    -whoami   显示当前用户
    -who   显示有哪些用户已经登录系统
    -w 显示有哪些用户已经登录并在干什么
    创建用户:
    -useradd 用户名
    这个命令执行的操作:
    1、在/etc/passwd中添加用户信息
    2、如果使用passwd,则将密码加密保存在/etc/shadow中
    3、为用户建立新的家目录 /home/adduser
    4、将/etc/skel中的文件复制到用户的家目录中     (里面有一些隐藏文件包括注销时运行的命令的文件和,登录时运行的命令的文件 ,可以在skel里手动建立一个文件之后所有用户的家目录都有这个文件 )
    5、建立一个与用户用户名相同的组,新建用户默认属于这个组
    修改用户信息:
    -usermod 参数 username
    参数:
    -l 新用户名
    -u 新userid
    -d 用户家目录位置
    -g  用户所属主组
    -G   用户所属附属组
    -L   锁定用户使其不能登录
    -U    解除锁定
    删除用户
    userdel username   保留用户的家目录
    userdel -r username    同时删除用户的家目录
    创建,修改,删除组
    groupadd groupname
    groupmod -n newname oldname
    groupmod -g newGid oldGid  组ID
    groupdel groupname

    文件权限
    Linux中,每个文件拥有三种权限:
    -r(读取)
    -w (写入)
    -x (执行)
    对于目录用户必须有rx权限,否则不能浏览目录

    Linux权限基于UGO,模型进行控制:
    -U代表User,G代表Group,O代表Other
    -每一个文件的权限基于UGO进行设置
    -权限三个一组(rwx),对应UGO分别设置
    -每一个文件拥有一个所属用户(U)和所属组(G),不属于该文件所属或组的使用O权限
     
    ls -l 命令的信息(格式)
    UGO权限   链接数量  所属用户 所属组 大小 时间 文件名

    修改文件所属用户、组
    -chown改变文件的所属用户:
    chown 用户名  文件名
    -R  (大写)递归修改目录下的所有文件
    -chgrp在改变文件的所属组:
    chgrp 组名 文件名
    -R 同上
     
    修改权限
    chmod 模式 文件
    (-R 可以递归修改)
    -模式的模式:
    u,g,o分别代表用户、组和其他
    a可以代指ugo
    +,-代表加入或删除对应权限
    r,w,x代表三种权限
    示例:
    chmod u+rw chen
    chmod g-x chen
    chmod go+r chen
    chmod a-x chen
     
    支持数字表示权限:
    -r = 4 (2^2)
    -x = 2 (2^1)
    -x = 1 (2^0)
    使用数字表示权限时,每组权限分别为对应数字之和:
    rw = 4 +2 = 6
    rwx = 4+2+1 =7
    r-x = 4+1 =5
    chmod 660 chen == rw-rw----
    chmod 775 chen == rwxrwxr-x


    网络基本配置
    linux中,网上以eth0,eth1命名,
    lspci   查看PCI硬件信息
    lsusb  查看usb硬件信息
    ifconfig -a 查看所以网上接口信息
    ifconfig -eth0 查看特定接口
    ifup eth0 开启网卡
    ifdown eth0  关闭网卡
    setup  向导配置网络地址
     
    网卡配置文件
    /etc/sysconfig/network-scripts/ifcfg-eth0
    DNS配置文件
    /etc/resolv.conf
    静态主机名配置文件
    /etc/hosts
    主机名配置文件
    /etc/sysconfig/network
     
     
    网络测试
    网络连通性
    ping 192.168.1.1
    显示路由表
    ip route
    追踪到达目标地址的网络路径
    traceroute www.baidu.com
    网络质量测试
     
     
    修改主机名
    永久修改:
    /etc/sysconfig/network     修改这个 文件
     
    CentOS 7  配置IP 用
    nmtui  命令


    管道和重定向
    命令行shell 的数据流有以下定义:
     
    名称                  说明       编号            默认
    STDIN           标准输入        0            键盘
    STDOUT        标准输出       1             终端
    STDERR         标准错误       2             终端
     
     
     
    重定向: >   将STDOUT 重定向到文件(覆盖)  echo "abc" > outfile
    >>  同上(追加)
    2>   将STDERR重定向到文件(覆盖)
    2>&1 将STDERR与STDOUT结合   报错和输出结果都会保存
    <  重定向STDIN   grep abc < /etc/passwd   (在passwd里文本内查找abc)
    管道:
    |    将一个命令的STDOUT作为另一个命令的STDIN    ls -l | grep bingxing
     


    Linux命令行文本处理工具
     
    grep基于关键字搜索文本
    grep 'linuxcast'  /etc/passwd
    find / -user linuxcast | grep Video
    -i  忽略大小写
    -n  显示结果所在行
    -v  输出不带关键字的行
    -A4  输出结果所有行之后的4行
    -b2  输出结果所在行之前的2行
     
    cut 基于列处理文本
    cut -d: -f3 /etc/passwd  只显示passwd里面用:分开的第三列
    grep linuxcast /etc/passwd | cut -d: -f3
    -d 指定分割字符(默认是tab)
    -f 指定输出的列号
    -c 基于字符进行切割   cut -c2-6  /etc/passwd 只显示第2到第6个字符
     
    wc 文本统计
    wc+文件名
    -l 只统计行数
    -w只统计单词
    -c只统计节数
    -m 只统计字符数
     
    sort 文本排序
    sort+文件名(非中文)
    -r  倒序排序
    -n 基于数字进行排序
    -f  忽略大小写
    -u 删除重复行
    -tc  使用c作为分隔符分割为列进行排序
    -kx   当进行基于指定字符分割为列时,指定对哪(x=?)个列排序
     
    diff文本比较
    diff linuxcast linuxcast.net
    -i  忽略大小写
    -b  忽略空数量的改变
    -u  统一显示比较信息(一般用以生成patch)
    diff -u linuxcast linuxcast-new > final.patch
     
    tr 处理文本内容
    tr -d 'TMD' < linuxcast
    tr 'a-z' 'A-Z‘ < linuxcast
     
    sed 以搜索差替换文本(使用的是正则表达式)
    sed 's/linux/unix/g'  linuxcast     s: 搜索   g : 全部替换
    sed '1,50s/linux/unix/g' linuxcast
    sed -e 's/linux/unix/g' -e 's/nash/nash_su/g' linuxcast    加e可以同时进行多个替换
    sed -f sededit linuxcast    sededit  可以是一个文件,内容是 ''里的内容,不要每次都写''里的内容


    RPM安装
     
    安装软件:     rpm -i software.rpm
    卸载软件:  rpm -software
    升级形式安装:  rpm -U software-new.rpm
    rpm支持通过http,ftp协议安装软件
    可以加入以下参数:
    -v 显示相关信息
    -h  显示进度条
    rpm -qa  列出所有安装的rpm软件
    rpm -qf filename  查询目标文件属于那个rpm包
    rpm -qi  packagename 查询指定已安装rpm软件信息
    rpm -ql packaname 查询指定已安装rpm软件包含的文件
    rpm -qip software.rpm 查询rpm文件的信息
    rpm -qlp software.rpm 查询rpm文件包含的文件
     
     
    导入秘钥:
    rpm --import rpm-gpg-key-centof-6
    验证rpm文件:
    rpm -K linuxcast--1.0-i-i386.rpm
    验证已经安装的软件
    rpm -V software

     
  • 相关阅读:
    020606-04-聊天布局-键盘处理
    020606-03-聊天布局-键盘处理
    02060601-聊天布局
    按钮背景图片拉伸
    源码-0205-02--聊天布局02
    源码-0205-02--聊天布局
    向量投影公式
    定比分点、中点公式
    重叠检测----凸边形
    aabb碰撞检测
  • 原文地址:https://www.cnblogs.com/bingxing/p/6444059.html
Copyright © 2011-2022 走看看