zoukankan      html  css  js  c++  java
  • 1119班Python第二周总结

    Linux 基础总结


    一、Linux背景

      Linux一切皆文件 Linux一切没有消息的消息就是最好的消息

    二、基础命令学习

        命令组成:

           命令+选项+参数

        手册查看:

           man 命令 (打开关于该命令的手册),具体使用man man

        命令展示:

           1.pwd 显示当前文件夹的路径

           2.cd 切换至目标路径 cd空格/cd ~(返回该用户的家目录)

              根目录:/ 用户家目录:/root(root用户) /home(普通用户)

              绝对路径:从/(根目录)开始至当前目录

              相对路径:从当前路径开始算到目标路径 . (当前文件夹) ..(当前文件夹的上一个文件夹)

           3. ls 选项 参数(列出该参数的信息)

              选项:-a(隐藏) -l(详细信息) -i(编号) -d(使文件夹像文件一样被列出,而不是列出其内容) -h(配合“-l”使用将其大小以KB显示)

           4.查看文件内容

              cat 文件(显示文件的全部内容)

              less 文件(显示文件可用,可以使用滚轮翻看)

              more 文件(显示文件内容,回车下一行,空格下一页)

           5.复制 cp 【-r(目录)】 源文件路径 目标文件路径

           6.剪切 mv 源文件路径 目标文件路径(路径相同,文件名不相同//重命名)

           7.删除 rm 【-r(目录)-f(强制)】 文件路径 

           8.创建文件 touch 文件名 (空文件)

           9.创建文件夹 mkdir 文件夹名

           10.关机与重启

              关机:(shutdow -h now)(poweroff)(init 0)(halt)

              重启:(shutdow -r now)(reboot)(init 6)

           11. history 查看历史命令

    三、文件管理

      文件属性(元信息)

        1.stat 文件或文件夹名(查看文件的所有详细信息)

        ls -l(都是查看信息,但是没有stat详细)

      文件类型

        文件的类型不以文件名的后缀区分

        共有其中文件类型:

          - 普通文件
          d 目录文件
          c 字符设备文件
          b 块设备文件
          p 管道文件
          s 套接字文件
          l 符号链接文件

      文件的权限

        查看文件的权限 ls -l 文件名

          (文件类型)(拥有者权限【u】//所属组权限【g】//其他用户权限【o】)(硬链接数量)(拥有者)(所属组)(文件大小)(创建时间)(文件名)

            文件:r(读)w(写)x(可以当做命令执行) 文件夹:r(读取文件夹信息)w(在文件夹内创建删除)x(打开)

      防止产生权限过大的文件:

        umask

        初始权限(文件初始666,文件夹初始777)- umask===文件真正的权限


      文件的硬链接和软链接

        硬链接:同一个文件,名字不同

            iNode是同一个分区文件的唯一标识

            硬链接文件不能跨区

            创建文件的硬链接

            ln 源文件名 新的文件名

            cp -l 源文件名 新文件名

        软连接(符号链接):就是一个“快捷方式”,存储的是源文件的路径

            可以跨分区,可以作用于文件夹

            ln -s 源文件名 新的文件名

            cp -s 源文件名 新的文件名


      文件的拥有者和所属组:

          创建用户:useradd   用户名

          设置密码:passwd    用户名

          切换用户:su  -   用户名(不加-,不切换至 家目录)

          删除用户:userdel 用户名

          登出用户:exit

          用户信息:/etc/passwd

          组信息:/etc/group

          密码信息:/etc/shadow

          创建组:groupadd 组名

          删除组:groupdel 组名

          添加用户到一个组:gpasswd -a 用户名 组名

          从一个组删除用户:gpasswd -d 用户名 组名

       文件大小

          文件大小(size)不等于所占磁盘空间大小(基础单位块(block))

          stat 文件或文件夹(文件查看文件的详细信息(包括各种时间))

          du -sh 文件或文件夹(查看文件或文件夹占用磁盘空间的大小

          df -h (查看磁盘分区占用情况)

       文件时间

          access time (最后一次访问时间)

          modify time (最后一次更改时间

          change time (最后一次改动时间)

            改动(文件属性)更改(文件内容)


       文件查找

          可执行文件:

            which 命令文件

            whereis 命令文件(不仅查询到命令的位置,还会查到命令手册位置)

          不可执行文件:

            locate 文件夹或文件(遍历数据库,查找文件夹时会显示所有找到所有包含该文件夹的文件)

            updatedb (更新数据库)

          find 范围 选项

            选项:
              -name 按名字查找

                格式:find 范围 -name 文件名(不找关键词)

              -size 按大小查找

                  格式:find 范围 -size (b(块)/c(字符)/k(KB))

                  -(大小范围内)+(大小范围外)

              -mtime 按最后一次更改时间查找

              -mmin (按分钟查找)

                  -(大小范围内)+(大小范围外)

              -type 按类型查找

                  类型:(f(普通)/d(目录)/c(字符设备)/b(块设备)/l(字符链接)/p(管道)/s(套接字))

              -exec 查找后对文件执行命令

                  格式:find 范围 选项 -exec 命令 {}  ;

              -a 连接多个查找选项


       文件的打包压缩

          压缩类型: .gz     .bz2     .zip

          压缩格式:

            gzip 文件名 压缩为.gz     解压:gunzip 压缩包名

            bzip2 文件名 压缩为.bz2     解压:bunzip2 解压包名

              【上面的两个格式无法压缩文件夹,且压缩后源文件会消失,且名字无法更改】

            zip 压缩包名 文件1 文件2 ...    解压:unzip 压缩包名 

              【可以压缩文件夹,且可以压缩到其他目录】

          主要:
            格式:tar 选项 xx.tar.xx 文件1 文件2 ...

            选项:-c(创建)-v(过程可视)-f(在最后,跟包名)-j(生成bz2格式)-z(生成gz格式)-J(生成xz格式)-x(解压缩)

               -C(指定解压路径)-t(不解包不解压查看压缩包内容)-r(只能想包中追加新文件)

    四、文件重定向

        当用户登陆后就会有三个文件依次打开:标准输入(stdin 0)标准输出(stdout 1)标准错误输出(stderr 2)

          0< 标准输出重定向     1>标准输出重定向       2<标准错误输出重定向

    五、管道

      “ | ” 管道

          管道左边要有输出,右边需要输入

       wc 【-lwc】 文件或文件夹

          -l(行数)-w(单词个数)-c(字符个数)

       grep 【-iwn】关键字 范围

          -i(大小写)-w(精准查找)-n(显示行号)


    六、VIM编辑器的使用


      vim 文件名----------------》打开————》一般模式
      ——》进入编辑模式编辑————》esc/Ctrl+c
      ——》:一般模式进入命令行模式(w保存,q退出)

        一般模式下:

          i:光标前插入 I:行前插入

          a:光标后插入 A:行后插入

          o:此行后插入一行 O:次行前插入一行

          w/W:下一个单词 s:重新输入此字符

          S:重新输入此行 nyy:复制n行

          p:粘贴 u:撤销 Ctrl+r:还原

          x/X:删除光标字符 ndd:剪切n行

          r:替换 R:一直替换知道Esc为止


        块选择:

          Ctrl+v方向键选择

          I/A插入相应的内容————》Esc Esc

          gg首行 G末行 nG:第n行

        命令行模式下:

          :进入命令行

          w保存 q退出 q!强制退出

          w 文件名 (另存为) saveas 文件名(另存为)

          %s/原字符串/新字符串/g 将所有原来的字符串替换为新的字符串

          a,b/原字符串/新字符串/g 将a行到b行所有的原来的字符串替换为新的字符串

          set nu(显示行号) set ts=n 将Tab设置为n个字符宽度

    七、软件包管理


       源码包

          源码包格式:.tar.gz .tar.bz2 .tar.xz

              1.下载并解压解包
              2.编译make
              3.make install

      二进制包(格式: .rpm)

          yum 安装:
              /etc/yum.repo.d/xxxx.repo
              yum install xxxx

          例如有如下软件包:

            coreutils-8.22-21.el7.x86_64.rpm
            包名:coreutils

            yum install (命令文件名) 安装
            yum remove (命令文件名) 卸载
            yum repolist 查看仓库有多少软件包
            yum list 列出所有的软件包
            yum provides 命令文件路径 查看命令文件对应的软件包
            yum update 命令文件名(更新)
            yum clean all (清楚缓存)

            yum源的所在路径:/etc/yum.repos.d/xxxx.repo


      本地yum源配置:

              1.将镜像文件挂载到文件系统

           2.创建镜像的挂载点 mkdir /mnt/centOS7

           3.光盘镜像在/dev/cdrom目录

            4.挂载光盘镜像

              mount -t iso9660 /dev/cdrom /mnt/centos7

            5.配置镜像的yum源

              vim /etc/yum.repos.d/my.repo

                  【local——centos7】
                  name=centos7
                  baseurl=file:///mnt/centos7
                  enabled=1
                  gpgcheck=0


            6.已安装的rpm软件包,安装

              xxxx.rpm

              rpm -ivh xxxx 安装已下载的rpm包

              rpm -e xxxx 卸载

              rpm -U xxxx 更新

              rpm -qa 查询系统中所有已安装的rpm包

              rpm -qf 命令文件路径 查询命令文件对应的软件包

    八、网络管理


       1.查看ip。mac。netmask

          ip addr ifconfig


       2.查看/启动/重启/关闭/自启动/禁用服务

          systemctl status(查看)/start(启动)/restart(重启)/stop(关闭)/enable(自启动)/disable(禁用) 服务名字


       3.手动配置静态ip地址

          关闭NetworkManager

          systemctl stop NetworkManager

          配置/etc/sysconfig/network-scripts/ifcfg-nes33

              DEVICE=eth0
              BOOTPROTO=none
              NM_CONTROLLED=no
              ONBOOT=yes
              TYPE=Ethernet
              IPADDR=172.16.60.1
              PREFIX=24
              GATEWAY=172.16.60.254

       4.重启网络服务

          systemctl restart network


       5.关闭防火墙

          systemctl stop firewalld

          systemctl disable firewalld

       6.vsftpd服务————>文件共享

          安装:yum install vsftpd

          启动:systemctl start vsftpd

          开机自启动: systemctl enable vsftpd

          配置文件:/etc/vsftpd/csftpd.conf

       7.访问共享目录:

          下载安装:yum install lftp

          lftp 192.168.5.129

          lcd——>切换下载路径

          get 文件(下载非目录文件

          mirror 文件夹(下载目录文件)

          bye(退出)

       8.远程挂载

          下载安装:

            yum install nfs-utils rpcbind

          启动:
            systemctl start nfs

            systemctl enable nfs

            systemctl start rpcbind

            systemctl enable rpcbind

          编辑共享路径:

            vim /etc/exports

            /var/ftp/pub *(ro,sync,no_squash)

          客户端挂载:
            mount 192.168.5.129:/var/ftp/pub /mnt

    九、进程管理

        查看进程信息

          ps aux

        终止进程通过kill 发送信号

          kill -l (查看所有信号)

          kill -9 n 发送9号信号给进程号为n的进程

          top 实时查看系统中进程的运行状态

    十、git的基本用法

       1.创建仓库

          登陆github账号,创建远程仓库

        2.生成密钥

          ssh-keygen

           cat  ~/.ssh/id_pub

        3.将密钥复制到账号的key

        4.克隆获得的链接

          git clone 链接   

        5.添加文件后上传

          git add    添加文件

          git commit -m “备注”  备注提交到仓库

          git push          保存提交

        6.删除文件后上传

          git rm 文件         删除文件

          git commit -m “备注”  备注提交到仓库

          git push          保存提交

         7.如果想要在上传之前恢复删除

          git log    查看仓库日志

          git reset --hard  版本id  切换到指定版本

        8.从网上同步

          git pull  (下载网上的仓库版本)

         git  reflog  (查看最新版本日志)    git  status   (查看仓库状态) 

  • 相关阅读:
    iOS 代码规范
    Clang Format
    PullToRefreshListView手动刷新问题
    android不依赖具体activity弹出Dialog对话框,即全局性对话框
    我的手机华为荣耀7,运行android程序不输出Log
    Android从imageview中获得bitmap
    Fragment里面的ViewPager嵌套subFragment,主Fragment切换的时候subFragment出现空白Fragment的Bug
    解决某些手机RadioGroup中的RadioButton不居中的问题
    Android权限大全
    UML类图
  • 原文地址:https://www.cnblogs.com/mabaohua/p/10058647.html
Copyright © 2011-2022 走看看