由于最近需要学习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
## 这里是重要文件的backupimport osimport 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)复制代码