zoukankan      html  css  js  c++  java
  • python第四篇:linux命令行总结 + 自动备份Python程序

    由于最近需要学习Python爬虫相关的知识,所以就先从Python基础、Linux基础开始进行了学习,下面主要是总结了常见的Linux的命令行。最后为了巩固学到的东西,尝试写了个自动备份的Python小demo。

    1.Linux基本命令

    1.1 对终端的操作命令

    • gnome-terminal 打开终端
    • Ctrl+d 关闭终端

    1.2 清除屏幕的命令

    • clear (或者Ctrl+L)

    1.3 进入和退出文件和文件夹

    • cd / 进入到home
    • cd .. 返回上一级目录
    • cd ../.. 返回上面两级目录
    • cd - 返回上次所在的目录
    • cd ~ 返回用户主目录
    • pwd 显示当前的整个路径

    1.4 查看文件或者文件夹

    • ls 查看目录中的文件
    • ls -l 查看目录中文件的详细资料
    • ls -l /etc
    • ls -a 显示隐藏文件
    • tree 显示文件和目录由根目录开始的树形结构

    1.5 新建文件和文件夹

    • mkdir dir1 创建一个名叫dir1的目录
    • mkdir dir1 dir2 创建两个目录
    • mkdir中的 -p 选项  如果中间文件夹不存在,则创建所有中间文件夹
    • touch 文件名  创建文件或者更新文件的修改时间

    1.6 删除文件和文件夹

    • rmdir dir1 dir2 删除一个或多个空的文件夹
    • rm -rf dir1 dir2 删除一个或多个非空文件家
    • rm -rf dir1 删除一个叫dir1的目录并同时删除其内容
    • rm -f file1 删除一个叫file1的文件

    选项

    • (-r) 递归删除文件夹内部的文件夹和文件
    • (-i) 删除前给出提示 y n  rm -i *
    • (-f) 强制删除 不给提示

    1.7 修改文件和文件夹(文件移位置或者更名)

    • mv 源文件或文件名 目录文件或文件名

    1.8 复制文件和文件夹

    • cp [选项] 源文件或文件夹名 目标文件和文件夹名 复制一个文件
    • cp dir/* 复制这个文件夹下的所有内容到当前文件夹下a
    • cp day01.txt ~/桌面
    • cp day01.txt ~/桌面/day02.py

    选项:

    • (-a) 可以复制文件夹

    1.9 压缩和解压缩

    • zip -r XXX.zip ./* 压缩服务器上当前目录的内容为xxx.zip
    • unzip.filename.zip 解压缩当前的zip包
    • gzip 生成压缩后的文集那后缀名通常以.gz结尾
    • gunzip 解压缩算法
    • tar [选项] 文件名或路径  对文件和文件夹进行打包和解包的命令

    常用选项:

    • (-c) 创建包
    • (-x) 解包
    • (-f) 文件名 操作的文件
    • (-v) 显示文件的操作细节
    • (-z) 用gzip 和gunzip对包进行压缩和解压缩
    • tar -czvf ~/day01.tar.gz * 将当前目录下的所有文件都打包到住目录下
    • tar -xzvf ~/day01.tar.gz 解包到当前目录

    1.10 查找(根据文件名等信息查找指定文件) 关键字的搜索

    • find 路径 -name "文件名"

    例如

    • find /etc -name "pass"

    1.11 通配符

    • * 代表0个,1个或者多个任意字符
    • ?代表1个任意字符##
    • a* 以为a开头的
    • *c  以c结尾的

    1.12 help man tab键

    • ls --help 用于查看命令的帮助信息
    • man ls 和
    • 上面的命令相似
    • tab键补全

    1.13 grep命令

    • 查找文件中相应的内容,及文本信息
    • 格式: grep "内容" [选项] 文件名或路径
    • grep "linux" -r /etc/ 拿到全部的

    常用选项:

    • (-n)显示行号
    • (-r) 递归搜索文件夹内的文件

    1.14 linux下的路径

    • 相对路径
    • 绝对路径

    **绝对路径**

    以'/'开头的路径为绝对路径

    **相对路径**

    不以'/'开头的路径为相对路径
    开始的符号有

    • 文件/文件夹名
    • . 当前文件夹
    • ..上一级文件夹
    • -用户主目录

    1.15 sudo命令

    • 作用:用超级用户root权限来执行这个命令
    • 格式: sudo命令 [选项] [参数]
    • sudo -i 进入到root用户

    2.下面贴上一份自己练手的Python备份文件小demo

    ## 这里是重要文件的backup
    import os
    import time
    
    # 1. 需要备份的文件与目录将被指定在一个列表中
    # 例如在Windows下的source= ['"c:\My Documents"','C:\Code']
    # 又例如在Linux下的:
    source = ['/home/tarena/桌面']
    
    # 2. 备份文件必须存储在一个主备份目录中
    
    target_dir = '/home/tarena/桌面/targetDir'
    
    #如果目标目录还不存在则创建
    if not os.path.exists(target_dir):
    os.mkdir(target_dir)
    
    
    # 3. 备份文件将压缩打包成Zip文件
    # 4. Zip压缩文件的文件名由当前日期和时间构成
    today = target_dir + os.sep +time.strftime('%Y%m%d')
    now = time.strftime('%H%M%S')
    
    target = today + os.sep + now +'.zip'
    if not os.path.exists(today):
    os.mkdir(today)
    print("success create directory")
    
     
    
    # 5. 使用Zip命令将文件打包成Zip格式  zip -r target source (target是备份后的文件的目录 source是源文件的目录)
    zip_command = 'zip -r {0} {1}'.format(target, ' '.join(source))
    
    # 运行备份
    print('zip command is:')
    print(zip_command)
    print('running')
    if os.system(zip_command) == 0:
    print('success')
    else:
    print('fail')
    
    print(os.sep)

  • 相关阅读:
    (转发)storm 入门原理介绍
    shell :将标准输出及标准错误输出写到指定文件
    shell循环(两个日期比较,改变某个特定日期来改变当前比较值)
    MongoDB基本操作
    (转)cenntos 安装mongodb
    通过spark sql 将 hdfs上文件导入到mongodb
    股票实战--线性回归
    Python PIL 的image类和numpy array之间的互换
    根据关键点的脸型的计算
    用反卷积(Deconvnet)可视化理解卷积神经网络还有使用tensorboard
  • 原文地址:https://www.cnblogs.com/leijing0607/p/7285664.html
Copyright © 2011-2022 走看看