文件相关的命令及其它知识点

知识回

       所有的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的磁盘管理
     fdisk -- 分区(逻辑边界)写入文件系统;-l 磁盘的命名
     mkfs -t //指定文件系统格式;
     mount 要挂载的设备 挂载点 【存储设备在Linux系统上必须挂载】
     umount 要挂在的设备/挂载点
     df -h
     /etc/fstab 实现开机自动挂载
Linux的主要目录
    / /bin /sbin
    /etc
    /usr /usr/local/
    /var
    /opt
    /sys /proc
    /tmp
    /lib /lib64
    /home /root
    /cdrom /media /mnt

常见的关于目录文件操作的命令:
 ls 文件通配符globbing * ? [ ] ^ $ 
 cd . .. ~ - 绝对路径与相对路径
 grep
 正则表达式 1、字符串匹配 . [] [^] [:digit:] [:alpha:] ... 2、次数匹配 * ? {m} {m,n} {0,n} {m,} 3、位置锚定 ^ $  <  /> 4、分组 (ab)* abababab
  ab* abbbbb
  .*
  -v
  -i
  ^$ -- 空白行
 mkdir -pv 同时创建多级子目录
 rm -r
 rmdir 删空目录
 tree -L

---------------------------------------------------------------------------------------------------------------------------------------------------------

一、文件相关的命令

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

注:name不是属性
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=' ') print("Hello World")
              print("Hello World")
       -e 识别
       echo -n -e "Hello World "

     

 5、重定向 > 和 >>

         fd 文件标识符
               0 -- 标准输入 
               1 -- 标准输出
               2 -- 错误输出

          程序 = 指令 + 数据
                     代码     变量

          变量里面的数据从何而来?通过代码执行的数据又输出到哪里?
           (通过标准输入去输入)        (通过标准输出输出去)
         规定:默认标准输入为--键盘 标准输出为--显示器
                    而重定向就是用来改变输入和输出的;
         

6、输出重定向

       > 覆盖重定向 默认工作中不能使用 set -C 去掉这个功能,同时 >| 可以进行强制重定向(set +C开启覆盖 重定向功能)

        >> 追加重定向 在原有的文件上,在添加追加的数据即可;

        扩展:
                在Linux中,命令输出除了默认输出结果以外,还返回一个命令执行状态的结果;返回0代表命令执行成功,而返回非0则是失败;$? 存储上一条命名的执行状态结果;
                在工作中,我们往往不需要命令输出的结果,而只需要命令执行的状态,我们就会使用 重定向 将输出结果重定向至 空文件(/dev/null)
                cat a.txt > /dev/null

7、输入重定向

      < 把后面的文件,交给前面的命令来执行;
      tr 命令,将前面的内容替换为后面的内容
      tr abc ABC < a.txt
      << 将多行内容同时输入,用在 cat 命令中
      cat >>文件<<EOF
      >a
      >EOF

8、错误输出重定向
      2> 需要带上 fd(文件标识符)
      2>> 追加的错误重定向输出
      扩展优化:
             cat a.txt > /dev/null
             cat a.txt 2> /dev/null
             &> /dev/null 无论命令执行正确与否,都将输出内容指定到/dev/null
             &>> [普通文件]

 9、管道
             command 1 | comand 2 | command 3 | command 4 | .........
             将前面的命令的执行结果,输出给后面一条命名执行;
           【Linux思想:结合小功能,完成复杂功能】
               tail -7 /etc/fstab | cut -d' ' -f1

                 cut 切             

     -d 指定分隔符‘ ’ 

              -f 取的列 1-3 1,3 1

              

 二、Linux远程

1、查看或配置网卡信息

       网卡和IP地址
           ifconfig 
           没有该命令,我们需要安装网络包工具(net-tools)
           apt install net-tools 

            如果,网卡没有起来,我们需要修改默认的网卡配置文件;

            /etc/network/interfaces
            vim /etc/network/interfaces
            a、动态 - dhcp
                  auto eth0
                  iface eth0 inet dhcp
          【修改配置文件,就需要重启服务】
                  /etc/init.d/networking restart
                  b、静态 - 手动去配置
                  address 192.168.94.10
                  netmask 255.255.255.0

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

      无密码远程登陆

原文地址:https://www.cnblogs.com/liujing17/p/11305267.html