• 01、Linux基础命令


    linux 一些主要目录的认识:
    /bin 二进制可执行命令
    /boot 存放系统引导文件,如 内核、grub 等
    /dev 设备文件
    /etc 系统配置目录
    /home 普通用户家目录
    /lib 系统库文件
    /lib64 64位库
    /proc 进程目录,了解系统的一个窗口,在此可以查看很多内核信息
    /root root用户的家目录
     
    /sbin 管理员使用命令的存放目录
    /selinx selinux 工作目录
    如果该目录为空表示禁用了 selinux
    如果不为空,则表示启用了 selinux
    /src 系统、用户源文件工作目录
    有时用户在编译源代码时,会把代码放到该目录
     
    /var 存放比较大的,经常变化的文件
    比如系统经常把日志放在该目录
    linux 命令:
    命令分类:
    linux 把命令分为内部命令和外部命令.
    内部命令:
    shell 自带的命令,常驻内存
    外部命令:
    不常驻内存,以文件的形式放在磁盘上
     
    判断方法:
    能执行,却找不到文件就是内部命令
     
    或者
     
    type cd
     
    获取命令帮助的方法:
    1) man
        格式:man 命令名
        如:  man fdisk   --获得fdisk的帮助信息
     
    2) help
        格式: help 命令名
      命令名 --help
        如:   help cd
      useradd -help
    3) info  侧重介绍信息
        如: info fdisk
            info mount
    使用命令前,了解命令特征:
    1、命令、参数等区分大小写
    2、程序能否执行与扩展名没有关系,与文件能否执行,是否有执行权限有关
    3、命令名和路径可以使用 tab  来补齐
     
    文件、目录管理命令
        ls   列文件目录清单
    格式: ls [option] 查看目标
     
    如:   ls /soft
          ls /boot
          ls /var
          ls        --如果省掉目标的话,查看当前目录
     
    option:
        -l     长格式显示
        -a     显示全部(包括隐含文件)
       隐含文件方法:文件名以 . 开头
        -t     按修改时间排序
        -r     反向排序
        -S     按大小排序
        
          ls -l
    -rw-------. 1 root root  1638 10月 29 23:24 anaconda-ks.cfg
    -rw-r--r--. 1 root root 55504 10月 29 23:24 install.log
     
    第一列的第一位:文件类型
        -    普通文件
        d    目录
        b 块设备文件
        c 字符设备文件
        l 软链接
        p 管道文件
     
    第一列2-10 表权限
        linux 权限用三个字母表示  r(读)   w(写)   x(执行)
                      4      2      1
        9位分成三组:每三位一组,每组对应一类用户:属主(自己)、
        开放组、其它用户
     
    第二列:硬链接数
     
    第三列:属主
    第四列:开放组
     
    第五列:文件大小
     
    第六列:修改日期
     
    第七列:文件名

    touch 新建空文件,如果文件存在不覆盖,但是会更新其修改时间

     
    rm    删除文件或目录
    格式: rm [option]  目标文件或目录
    option:
        -r   删除目录
        -f   强制删除不提示
        rf  组合时要慎用
     
    如果删除目录: rm -r  目录名
    如:   rm /test/a      --删除/test/ 下的a
         rm  b           --删除当前目录下的 b
         mkdir      创建目录
    mkdir [option]  目录名
     
    option:
        -p    如果目录的上层目录不存,自动创建
        -v    显示过程
    例:在/下创建 test  
      mkdir /test
        
    例:在 /  下创建  u01
        mkdir /u01
     
    例:在 /soft 下创建 myshare
        mkdir /soft/myshare      --做的时候要确保 /soft要存在
     
    例:在 /u01 建 app
        mkdir -pv /u01/app
     
    cp  复制文件
    格式: cp 源文件  目标文件
    option:
        -r    复制目录
        -f    强制覆盖,不提示
        -i    覆盖时提示
        
     
    例: cp /etc/yp.conf  /test/
    /etc/yp.conf 复制到 /test 下
    scp  网络复制
    格式: scp  源文件   目标文件
    如果文件不在本机的表示方法:
        ip:路径
     
        如:172.16.1.116:/etc/fstab
            表示 172.16.1.116 的 /etc/fstab 这个文件
     
    本机文件表示无须ip
            如:/etc/fstab
     
    例:把 172.16.1.132 的文件 /etc/fstab 复制到本机的 /test 下
    scp 172.16.1.132:/etc/fstab  /test/
     
    例:把本机的 /etc/yp.conf 复制到 172.16.1.123 下的 /root
    scp /etc/yp.conf 172.16.1.123:/root/
     
     
    mv  移动或改名
    格式:mv 源文件 目标文件
     
    例: mv a b    --将当前目录下的文件a 改名为b
    例: mv a /tmp/b   --将当前目录下的a 移动到/tmp 下,并改名为 b
     
        究竟是改名还是移动,主要看前后位置,前后位置没变就是改名
     
        移动和改名可以同步进行
     
    练习: / 建两个目录  test    abc
                   /etc 下所有 .conf 文件拷到 abc 下,再看abc
                  下以a 开头的文件移到 test 下
     
          mkdir /test
          mkdir /abc
          cp /etc/*.conf /abc/
          cd /abc
          ls
          mv a*  /test/
          ls /test   也可以  cd /test;ls
     
        cd   切换目录
     格式:cd  目标目录
            
          cd ..      --回到上一级
          cd         --回到家目录,查看用户家目录 echo $HOME
          cd ~       --回到家目录
          cd ~tom    --到tom的家目录
       
     例: cd /test    --将当前目录转到 /test
                 cd test     --将当前目录转到当前目录下的 test
     
     
        pwd  显示当前目录
     
        rmdir 删除空目录
     
        cat   显示文件内容
    格式:  cat [option] 文件名
    option:
        -n     显示行号
       -b     显示行号
       -E     显示行尾符
       -A     显示非打印字符
     
    如:  cat /proc/cpuinfo
        more  分屏显示文件内容
        less  分屏显示文件内容
        还可通过箭头向上或向下移动看
     
     
        练习:看下 /etc/passwd 文件内容    
             看下 /etc/shadow 文件的内容
     
     
    重定向
        重定向即改变输入或输出的方向
      
        输入重定向
    <    
     
    [root@s100 ~]# cat myfile
    123456
    123456
     
    [root@s100 ~]# passwd <myfile
     
        输出重定向
    >       以覆盖的方式输出重定向
    >>      以追加的方式输出重定向
     
     
    双向重定向  tee
    一般的重定向,将信息写到文件后,屏幕就不会再显示了,tee 既能把信息显示在屏幕上,同时也能把信息写到文件,这就是称之的双向重定向
     
    操作时一般用管道的形式
       如: uptime | tee myfile
     
     
     
    重定向的编码
    0    标准输入
    1    标准输出
    2    错误输出
     
    由于信息的不同,于是重定向时就有变化了
    1>   
    2>  
     
    cat myfile  abcd 1>a.txt 2>b.txt   
                  --将标准输出定向到a.txt 错误信息定向到b.txt
     
    cat myfile  abcd 1>a.txt 2>&1
          --将标准输出定向到a.txt 错误信息定向到标准输出的文件(即放到一块)
            实际上可以简写为
     
    cat myfile abcd >& a.txt
            >/dev/null    --将信息定向到空设备,将所有的输出信息丢弃掉,不显示
     
     
    管道  |
        
        管道主要用来将命令连接起来,将前一个命令处理的结果,传给后一个
        有时一些需求比较复杂,可能一个命令没办法完成,这里就可以用管道
        让每个命令处理一部分,最后完成需求。使用格式上,就是将命令用 “|” 连起来
     
    例:显示每个用户的用户名和所使用的shell
    cat /etc/passwd | awk -F: '{printf("%-15s%s ",$1,$7)}'
     
    cat /etc/passwd | awk -F: '{printf("%-15s%s ",$1,$7)}'|sort -k2
     
    例:看 /etc/passwd 中是否有root的行
    cat /etc/passwd | grep root
     
    例:看 /etc/passwd  有没有 shutdown 的行
    cat /etc/passwd | grep shutdown
     
    例:看无线网卡的地址
    ifconfig | grep wlan0 | awk '{print $5}'
     
     
    head  看文件头的前多少行
    head /etc/passwd   --默认看前10行
     
    head -n 5 /etc/passwd 看文件前 5 行
     
    tail  看文件后的多少行
    tail -n 3 /etc/passwd  看文件的最后3行
     
    tail -f /etc/passwd    监控文件的变化
     
     
    看文件的指定行,例只看文件的第3行
    head -n 3 | tail -n 1
     
    查看文件指定范围的行,如 3-5 行
    head -n 5 /etc/passwd | tail -n 3
     
     
    vi/vim 使用
        vi/vim 是linux下使用非常广泛的文本编辑器
     
        vim 的工作模式:
    编辑模式
        该模式主要用于输入一些编辑指令,如 dd, u  等,不能输入文本内容
        它的特点是 左下角无任何提示字样     
     
        切换到该模式的方法:按左上解的 ESC 键
     
    插入模式
        该模式主要用于插入文本,
        它的特点是 左下角有 “插入”字样
     
        切换到该模式的方法: i I a A o O s S
     
     
    末行命令模式
        主要用来输入一些编辑指令,特点是左下角有个冒号(:)
     
        切换到该模式的方法:编辑模式下(如果不在编辑模式,要切到编辑模式),
                                输入冒号(:)
     
        常用的末行命令:
        w      保存
        q      退出
        wq 保存退出
        w! 不保存退出
        set number  显示行号
        set nonumber 不显示行号
     
     
    编辑模式下的一些指令:
    删除:
    dd    删除行
    DD    只清空当前行
    50dd   删除50行
     
    d^ 删除到行首
    d$ 删除到行尾
     
    撤消:
    u   撤消
     
    复制
    yy 复制一行
    5yy 复制5行
     
    p 粘贴
     
    方法二: v  进入可视化操作 -> 移动光标选内容  -> y (copy)  -> 移到光标到目标位置 -> 在编辑模式下 按 p
     
    移动
    方法一:先复制,再删除
    方法二: v  进入可视化操作 -> 移动光标选内容  -> c (cut)  -> 移到光标到目标位置 -> 在编辑模式下 按 p
     
    查找
    /  +查找字符  (向下查找)
          如: /abc     --查看字符abc
            /yp      --查找字符yp
     
    ?  +查找字符 (向上查找)
          如: ?abc     --查看字符abc
             ?yp --查找字符yp
    n   下一个
     
    替换
    要在末行命令模式下
     
    范围s/原字符/新字符/参数
    范围:
        1 1行
        10   10行
        $ 最后1行
        1,$ 从第1行到最后1行
        % 全文
     
    参数
    g 全局替换(适用于一行有多个符合条件的字符)
    例:将1-5行中的#换成*
        :1,5s/#/*/g
     
    例:把所有的#删除掉
        :%s/#//g
     
  • 相关阅读:
    第六章 实验报告
    第三次实验报告
    第五章 循环结构课后反思
    第二次实验报告
    第一次实验报告
    第一次作业
    第九章
    指针实验报告
    第七次实验报告
    第六章
  • 原文地址:https://www.cnblogs.com/steven9898/p/11331159.html
Copyright © 2020-2023  润新知