python|2021.1.15~2021.1.22学习总结

1、Linux终端命令学习 学习网站:https://www.runoob.com/linux/linux-yum.html
Linux 文件与目录管理

  • pwd(print work directory):显示当前目录
    python|2021.1.15~2021.1.22学习总结
    文章图片

  • ls(list files):列出目录及文件名
    在这里插入图片描述
    • 选项和参数
      参数 作用
      -a 全部的文件,连同隐藏文件( 开头为 . 的文件) 一起列出来(常用)
      -d 仅列出目录本身,而不是列出目录内的文件数据(常用)
      -l 长数据串列出,包含文件的属性与权限等等数据;(常用)
    • 通配符使用
      通配符 含义
      * 代表任意个数个字符yi
      代表任意一个字符,至少1个
      [] 表示可以匹配字符组中的任意一个
      [aba] 匹配a、b、c中的任意一个
      [a-f] 匹配从a到f范围内的任意一个字符
  • cd(change directory):切换目录
    用于变换工作目录的命令
  • touch:修改文件或者目录的时间属性,包括存取时间和更改时间
    • 参数说明:
参数 说明
a 改变档案的读取时间记录。
m 改变档案的修改时间记录。
c 假如目的档案不存在,不会建立新的档案。与 --no-create 的效果一样。
f 不使用,是为了与其他 unix 系统的相容性而保留。
r 使用参考档的时间记录,与 --file 的效果一样。
d 定时间与日期,可以使用各种不同的格式。
t 设定档案的时间记录,格式与 date 指令相同。
–no-create 不会建立新档案。
–help 列出指令格式
–version 列出版本讯息。
  • mkdir(make directory):创建一个新的目录
    • 选项与参数
      参数 说明
      m 配置文件的权限喔!直接配置,不需要看默认权限 (umask) 的脸色~
      p 帮助你直接将所需要的目录(包含上一级目录)递归创建起来!
    • 实例
      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DTKMzMYx-1611320880449)(C:\Users\86184\AppData\Roaming\Typora\typora-user-images\image-20210122174528870.png)]
  • rmdir(remove directory):删除一个空的目录
    • **-p :**连同上一级『空的』目录也一起删除
  • cp(copy file): 复制文件或目录
    • 参数说明:
      参数 说明
      a 相当于 -pdr 的意思,至于 pdr 请参考下列说明;(常用)
      d 若来源档为连结档的属性(link file),则复制连结档属性而非文件本身;
      f 为强制(force)的意思,若目标文件已经存在且无法开启,则移除后再尝试一次;
      i 若目标档(destination)已经存在时,在覆盖时会先询问动作的进行(常用)
      l 进行硬式连结(hard link)的连结档创建,而非复制文件本身;
      p 连同文件的属性一起复制过去,而非使用默认属性(备份常用);
      r 递归持续复制,用于目录的复制行为;(常用)
      s 复制成为符号连结档 (symbolic link),亦即『捷径』文件;
      u 若 destination 比 source 旧才升级 destination !
    • 使用格式:gamp@gamp-virtual-machine:~/Desktop$ cp test.txt mkdir
  • rm(remove): 删除文件或目录
    • 参数说明:
      参数 说明
      f 就是 force 的意思,忽略不存在的文件,不会出现警告信息;
      i 互动模式,在删除前会询问使用者是否动作
      r 递归删除啊!最常用在目录的删除了!这是非常危险的选项!!
    • 实例:
      python|2021.1.15~2021.1.22学习总结
      文章图片

  • mv(move file): 移动文件与目录,或修改文件与目录的名称
    • 参数说明
      参数 说明
      f force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖;
      i 若目标文件 (destination) 已经存在时,就会询问是否覆盖!
      u 若目标文件已经存在,且 source 比较新,才会升级 (update)
Linux命令格式 cmd -option parameter
cmd是命令 option是参数 parameter是对象参数
which 语句可以查询命所在地址
2、Linux中yum命令的使用 https://www.jianshu.com/p/140d36f04ca7


这个详细到看不懂https://prefetch.net/articles/yum.html
一、使用yum安装和卸载软件
1.使用YUM查找软件包
命令:yum search ~
2.列出所有可安装的软件包
命令:yum list
3.列出所有可更新的软件包
命令:yum list updates
4.列出所有已安装的软件包
命令:yum list installed
5.列出所有已安装但不在Yum Repository 內的软件包
命令:yum list extras
6.列出所指定软件包
命令:yum list ~
7.使用YUM获取软件包信息
命令:yum info ~
8.列出所有软件包的信息
命令:yum info
9.列出所有可更新的软件包信息
命令:yum info updates
10.列出所有已安裝的软件包信息
命令:yum info installed
11.列出所有已安裝但不在Yum Repository 內的软件包信息
命令:yum info extras
12.列出软件包提供哪些文件
命令:yum provides~
三、清除YUM缓存
yum 会把下载的软件包和header存储在cache中,而不会自动删除。如果我们觉得它们占用了磁盘空间,可以使用yum clean指令进行清除,更精确的用法是yum clean headers清除header,yum clean packages清除下载的rpm包,yum clean all 清除所有。
1.清除缓存目录(/var/cache/yum)下的软件包
命令:yum clean packages
2.清除缓存目录(/var/cache/yum)下的 headers
命令:yum clean headers
3.清除缓存目录(/var/cache/yum)下旧的 headers
命令:yum clean oldheaders
4.清除缓存目录(/var/cache/yum)下的软件包及旧的headers
命令:yum clean, yum clean all (= yum clean packages; yum clean oldheaders)
四、yum命令工具使用举例
yum update 升级系统
yum install ~ 安装指定软件包
yum update ~ 升级指定软件包
yum remove ~ 卸载指定软件
yum grouplist 查看系统中已经安装的和可用的软件组,可用的可以安装
yum grooupinstall ~安装上一个命令显示的可用的软件组中的一个
yum grooupupdate ~更新指定软件组的软件包
yum grooupremove ~ 卸载指定软件组中的软件包
yum deplist ~ 查询指定软件包的依赖关系
yum list yum* 列出所有以yum开头的软件包
yum localinstall ~ 从硬盘安装rpm包并使用yum解决依赖
3、python调用Linux语句 https://www.cnblogs.com/hujq1029/p/7096247.html
Python中调用Linux命令并获取返回值
方法 适用条件 返回值
使用os模块的system方法:os.system(cmd) 该方法适用于shell命令不需要输出内容的场景 shell指令运行后返回的状态码
使用os.popen() 需要获取内容时可使用read()或readlines()方法 以文件的形式返回shell指令运行后的结果
使用commands模块commands.getstatusoutput(cmd) 其以元组(status,output)的形式返回命令执行后的返回状态和执行结果
commands.getoutput(cmd) 返回cmd的输出结果。
commands.getstatus(file) 调用了getoutput,一般不使用 返回ls -l file的执行结果字符串
**使用subprocess模块方法:**subprocess.run() python3.5新增 返回一个包含执行结果的CompletedProcess类的实例
subprocess.call() shell指令运行后返回的状态码
【python|2021.1.15~2021.1.22学习总结】os.popen(cmd)返回的是一个类文件对象,commands.getoutput(cmd)返回了字符串类型的输出结果,很多情况下用起来要更方便些。

    推荐阅读