2019年8月5日笔记

1、回顾
       所有的IT知识都时候依托以OSI七层模型(TCP/IP四层);
       协议:(规定)
       应用层协议:http https(B/S)  ssh telnet smtp pop3 imap ftp tftp dns dhcp
       传输层:tcp udp -- 端口
       网络层:路由协议  被路由协议(IPv4 IPv6) x.x.x.x
       数据链路层:以太网协议 MAC ff:ff:ff:ff:ff:ff:ff 全球唯一
       物理层:01的电信号
 
   Linux的目录结构
      Linux的磁盘管理
      fdisk  --  分区(逻辑边界)写入文件系统;-l  磁盘的命名
      mkfs -t //指定文件系统格式;
      mount 要挂载的设备 挂载点  【存储设备在Linux系统上必须挂载】
      umount 要挂在的设备/挂载点
      df -h
      /etc/fstab 实现开机自动挂载
 
     /     /bin  /sbin
            /etc
            /usr    /usr/local/
            /var
           /opt
           /sys  /proc
           /tmp
           /lib  /lib64
           /home /root
           /cdrom  /media  /mnt
 2、常见的关于目录文件操作的命令:
        ls   文件通配符globbing  *  ?  [ ]  ^   $ 
        cd    .    ..    ~   -   绝对路径与相对路径
        grep 
    正则表达式 1、字符串匹配 . [] [^] [:digit:] [:alpha:] ...
                       2、次数匹配 * ? \{m\}  \{m,n\}  \{0,n\}  \{m,\} 
                       3、位置锚定  ^ $  \b <\  \b /> 
                       4、分组 \(ab\)*  abababab
                 ab*   abbbbb 
        .*
        -v
        -i
        ^$  -- 空白行
           mkdir -pv 同时创建多级子目录
           rm -r
           rmdir  删空目录
           tree -L -d
 
3、文件相关的命令
  1、创建和删除操作
     Touch 摸 修改时间戳 stat (atime mtime ctime),如果没有该文件就创建该文件
      -C
      MMDDhhmm[CC]YY.ss
       top -->  查看进程【CPU:sy  ur】
      -a
     Rm
      *find* 【范围】 -file d  -name a* [文件属性]
      -exec 命令 {}\;
      -ok 命令 {}\;
      | xargs 命令 ;

     Mkdir -pv
  
  2、拷贝和移动文件
     Cp -a  //携带所有文件属性一块复制 
     Mv  move  1、移动文件 2、修改文件名称
      mv a b
      mv /tmp/a  /root/
      文件名扩展
      {}
      创建目录  姓名_学号 赵云_00001
      mkdir {赵云,石磊}_{00001,00002}
       赵云_00001
       赵云_00002
       石磊_00001
       石磊_00002
  3、查看文件内容
     Cat  一次性查看文件中所有内容
      cat /etc/init.d/
     More //man命令
      /
      ?
      q
     Less 在更多的清下,查看大文件,我们使用less
     Tail 默认查看倒数10行
      -n    // tail -n 20 文件名   简化:-20
      *-f*  不退出文件,实时查看文件内容
     Head 查看行首
      -n   // head -n 20 文件名   简化:-20
  4、其他
     Echo  -e -n
      echo $PATH
      -n   // print("Hello World",end='\t')  print("Hello World")
           print("Hello World")
      -e  识别 \t \n \r
       echo -n -e "Hello World \t"
  5、重定向 > 和 >>
     1) fd 文件标识符
          0  --  标准输入
          1  --  标准输出
          2  --  错误输出
      程序 = 指令 + 数据
                 代码    变量
      变量里面的数据从何而来?通过代码执行的数据又输出到哪里?
  
      规定:默认标准输入为--键盘  标准输出为--显示器
      而重定向就是用来改变输入和输出的;
  
      2)输出重定向
       > 覆盖重定向  默认工作中不能使用 set -C 去掉这个功能,同时 >| 可以进行强制重定向(set +C开启覆盖重定向功能)
       >> 追加重定向 在原有的文件上,在添加追加的数据即可;
 扩展:
      在Linux中,命令输出除了默认输出结果以外,还返回一个命令执行状态的结果;返回0代表命令执行成功,而返回非0则是失败;$? 存储上一条命名的执行状态结果;
      在工作中,我们往往不需要命令输出的结果,而只需要命令执行的状态,我们就会使用 重定向 将输出结果重定向至 空文件(/dev/null)
      cat a.txt > /dev/null
      3)输入重定向
       <  把后面的文件,交给前面的命令来执行;
       tr 命令,将前面的内容替换为后面的内容
        tr abc ABC < a.txt 
       << 将多行内容同时输入,用在 cat 命令中
       cat >>文件<<EOF
       >a
       >EOF
      4)错误输出重定向
       2>  需要带上 fd(文件标识符)
       2>>  追加的错误重定向输出
 扩展优化:
      cat a.txt > /dev/null
      cat a.txt 2> /dev/null
      &> /dev/null  无论命令执行正确与否,都将输出内容指定到/dev/null
      &>> [普通文件]
 
  6、管道
      command 1 | comand 2 | command 3 | command 4 | .........
      将前面的命令的执行结果,输出给后面一条命名执行;
           【Linux思想:结合小功能,完成复杂功能】
      tail -7 /etc/fstab | cut -d' ' -f1
      cut 切
       -d  指定分隔符‘ ’
       -f  取的列  1-3  1,3   1
 
4、Linux远程
  1、查看或配置网卡信息
    网卡和IP地址
       ifconfig
       没有该命令,我们需要安装网络包工具(net-tools)
       apt install net-tools
       若果,网卡没有起来,我们需要修改默认的网卡配置文件;
       /etc/network/interfaces
       vim /etc/network/interfaces
    1)动态 - dhcp
       auto eth0
       iface eth0 inet dhcp
          【修改配置文件,就需要重启服务】
       /etc/init.d/networking restart
    2)静态 - 手动去配置
       address 192.168.94.10
       netmask 255.255.255.0
       gateway 192.168.94.1 
          
2、远程管理机制
     Ssh 开启Ubuntu的ssh端口的监听功能; tcp-22
     netstat -tnl  // t -- tcp协议  n -- 不做解析
       如果没有:apt install openssh-server -y
       /etc/init.d/ssh start
     【Ubuntu默认只能使用普通用户进行远程连接】
     ssh teacher@192.168.94.10
     centos下,直接使用root用户远程登录即可;
     ssh root@192.168.94.10
     无密码远程登陆
   【见截图】
            

 

 
 
 
 

 

 
 
 

 

posted @ 2019-08-05 19:38  七月桔梗花未开*  阅读(91)  评论(0编辑  收藏  举报