1. Linux和操作系统


1.1. 什么是操作系统

1.2. 现有操作系统

Mac, win7, win10, winXP, Android, IOS

1.3. Linux用户目录

Windows: C:/windows/haoch/..

Linux: /home/user(绝对) + ~(相对)

  • 绝对路径: /home
  • 相对路径: ../..

    当前路径 ·

    上一个路径 ..

    上上一层路径 ../..

1.4. Linux文件权限

三种访问方式限制访问权限:

  • 读权限(r)-> 读取文件内容的权限,浏览目录的权限
  • 写权限(w)->增加,修改文件内容的权限,删除,移动目录内文件的权限
  • 可执行权限(x)->执行文件的权限,进入目录的权限

2. Linux命令


命令的格式

command [-options] [parameter1] ...
代码 说明
ls 显示当前路径下的所有文件和文件夹
cd path 跳转路径
cd .. 跳到上一个路径
cd ~ 当前用户的家目录(/home/haoch)
cd - 回到历史记录的上一个路径
cd ./python/ 跳到当前目录下的python文件夹下
cd python/ 跳到当前目录下的python文件夹下
pwd 查看当前所在路径
ls -l 当前路径下的文件详细内容
clear 清空
ls --help 查找命令的详细信息
man 帮助手册
按Tab 自动补全
history 查看历史命令
touch 创建文件
touc ./chenhao/123.py 在当前目录下的文件夹下创建文件
上下键 调用历史内容
ls > test.txt 重定向输出
ls >> test.txt 重定向输出(添加,非覆盖)
gedit test.txt 打开txt文件
cat test.txt 将文本内容显示在command上
cat 1.py 2.py > 3.py 同时显示多个文件
more test.txt 分屏显示(内容多的时候)
| 管道
ls -lha | more 命令先后执行
mkdir directory 创建一个新的directory
rmdir directory 删除一个文件夹(必须空)
rm directory -r 删除一个文件夹(任何)
rm 123.py 删除文件
rm 123.py -f 强制删除
ln 123.py 123link.py 创建硬链接
ln -s 123.py 123link.py 创建软连接
grep '22' 1.py 从文件中搜索内容
grep -n '22' 1.py 从文件中搜索内容(开头显示行数)
grep -n '^22' 1.py 从文件中搜索内容(开头显示行数),以22开头
grep -n '22$' 1.py 从文件中搜索内容(开头显示行数),以22结尾
grep -n 'e.e' 1.py 匹配eee,eae,eve....
find /home/ -name 123.py 在电脑中查找文件
cp 123.py test/ 将文件拷贝到另外一个文件夹
cp direc1 direct2/ -r 将一个文件夹拷贝到另外一个文件夹
tree 树状形式显示目录结构
mv 123.py test/ 将文件剪切移动到另外一个文件夹
mv direct1 direct2 将一个文件夹剪切移动到另外一个文件夹
mv 123.py 666.py 文件重命名
tar -cvf test.tar 1.txt 2.txt 3.txt 文件打包
tar -xvf test.tar 文件解包
gzip bao.tar 将包文件压缩
gzip -d bao.tar 解压缩成包
tar -zcvf test.tar.gz 1.txt 2.txt 文件打包 + 压缩(.gz)
tar -zxvf test.tar.gz 文件解压缩 + 解包(.gz)
tar -zxvf test.tar.gz -C path 文件解压缩 + 解包 + 指定路径
tar -jcvf test.tar.gz 1.txt 2.txt 文件打包 + 压缩(.bz2)
tar -jxvf test.tar.gz 文件解压缩 + 解包(.bz2)
which ls 查看命令的路径位置
sudo -s 转成超级管理员
kill 进程ID 结束进程
kill -9 进程ID 强制结束进程
reboot 重启
shutdown 关机
shutdown -h 20:20 20:20关机
cal 日历
date 时间
top 动态进程

技巧:

按Tab键可以提示命令->自动补全

drwxr-xr-x 2 haoch haoch 4096 Jan  8 20:22 chenhao
-rw-r--r-- 1 haoch haoch 8980 Jan  8 20:02 examples.desktop

2.1 文件管理相关

(1).ls命令

参数 含义
-a 显示指定目录下的所有子目录与文件,包含隐藏文件
-l 列表显示文件的具体信息
-lh 人性化显示文件大小
-alh 全部显示

(2).通配符

通配符 含义
* 文件代表文件名中所有字符
ls te* 查找以te开头的文件
ls *html 查找以html结尾的文件
代表文件名中的任意一个字符
ls ?.c 只找第一个字符任意,后缀为.C的文件
ls a.? 只找首字母为a,后缀名任意的文件
[] 表示匹配字符中的任意一个
[abc] 匹配a,b,c中任意一个
[a-f] 匹配a到f范围内的任意一个字符
ls [a-f]* 查找a到f任意一个字符开头的文件
\ 转移符
ls *a 查找文件名为*a的文件

(3).输出重定向命令

Linux允许将命令执行结果重新定向到一个文件,本应显示在终端的内容保存到指定的文件中

ls > test.txt(test.txt如果不存在,则创建,存在则覆盖内容)
ls >> test.txt (从文件末尾追加)

(4).分屏显示:more

如果cat一次性显示不开,用more, 用空格键翻页

(5).管道: |

将两个命令依次执行

ls -lha | more 产生的内容放入管道,后面从管道内提取内容,再执行

(6).文件夹和创建文件

  • 创建文件夹: mkdir
  • 删除空文件夹: rmdir
  • 删除文件: rm
参数 含义
-i 交互删除
-f 强制删除
-r 递归删除

(7).创建链接: ln

相当于window中的快捷方式

  • 硬链接:只能链接普通文件,不能链接目录
  • 软连接: 不占用磁盘空间,源文件删除则链接失效
ln 源文件 链接文件             # 硬链接
ln -s 源文件 链接文件 # 软链接

软链接: 删除后就都打不开

ln -s 123.py 123link.py
# 指向123.py
lrwxrwxrwx 1 haoch haoch 6 Jan 8 21:21 123link.py -> 123.py

硬链接:(源文件编辑,链接文件跟着变: 相当于实时复制的效果)

ln 123.py 123link.py
# 指向123.py
lrwxrwxrwx 1 haoch haoch 6 Jan 8 21:21 123.py
lrwxrwxrwx 1 haoch haoch 6 Jan 8 21:21 123link.py

(8).查看文件内容: cat

(9).文件中的内容搜索: grep

grep [-选项] '查找内容' 文件名

grep可以使用正则表达式

参数 含义
^a a开头
a$ a结尾
[Ss]igna[Ll] 从括号中选一个匹配
. 匹配一非换行符

(10). 查找文件: find

参数 含义
find ./-name test.sh 查找当前目录下所有名为test.sh的文件
find ./-name '*.sh' 查找当前目录下所有后缀名为.sh的文件
find ./-name '[A-Z]*' 查找当前目录下所有大写字母开头的文件
find /tmp -size 2M 查找在/tmp目录下等于2M的文件
find /tmp -size +2M 查找在/tmp目录下大于2M的文件
find /tmp -size -2M 查找在/tmp目录下小于2M的文件
find / -size +4k -size -5M 查找当前目录下大于4k,小于5M的文件
find / -perm 0777 查找当前目录下权限为777的文件

(11). 拷贝: cp

cp 源文件 目标文件夹 [-选项]
参数 含义
-a 复制目录时使用,保留链接,文件原有属性
-f 已经存在的目标文件不提示
-r 若给出的源文件是目录文件,则cp将递归辅助
-v 显示拷贝进度

(12). 移动剪切: MV

  • 移动
  • 重命名

(13). 归档管理: tar(打包)

tar [参数] 打包文件名 文件
参数 含义
-c 生成档案文件,创建打包文件
-v 列出归档解档的详细过程
-f 指定归档文件名称,一定是.tar文件,必须放在选项最后
-t 列出归档中包含的文件
-x 解开档案文件

(14). 系统管理

  • 当前日历: cal
  • 显示日期时间: date
  • 显示进程信息: ps
  • 显示动态进程: top
参数 含义
-a 显示终端上的所有进程
-u 显示进程的详细信息
-x 显示没有控制终端的进程
-w 显示加宽,以显示更多信息
-r 只显示正在运行的进程
  • 关机重启: reboot, shutdown, init
  • 检测磁盘空间:df
  • 查看当前目录占用的磁盘空间: du -alh
  • 查看网卡信息及IP地址: ifconfig
  • ping IP 查看是否能够连接

Linux for Python教程01的更多相关文章

  1. 【python教程01】 编辑器

    工欲善其事,必先利其器.学习python,首先应该安装好开发中使用的编辑器. 那么在这里说一下我们推荐的两款:sublime text  && pycharm   为什么推荐这两款编辑 ...

  2. Linux for python教程02

    目录 1. Linux用户及权限管理 1.1. who 1.2. 查看当前用户: whoami 1.3. 添加用户账号: useradd 1.4 切换用户 su 2.用户组 3. 修改文件权限: ch ...

  3. Node.js 教程 01 - 简介、安装及配置

    系列目录: Node.js 教程 01 - 简介.安装及配置 Node.js 教程 02 - 经典的Hello World Node.js 教程 03 - 创建HTTP服务器 Node.js 教程 0 ...

  4. python教程与资料

    网上有个人写的python快速教程,非常好.比看书好多了.猛击下面的链接地址 http://www.douban.com/group/topic/30008503/ python文档资料收集 pyth ...

  5. 《简明python教程》笔记一

    读<简明Python教程>笔记: 本书的官方网站是www.byteofpython.info  安装就不说了,网上很多,这里就记录下我在安装时的问题,首先到python官网下载,选好安装路 ...

  6. Python网络01 原始Python服务器

    原文:Python网络01 原始Python服务器 作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 之前我的Python教程中有人 ...

  7. Kail Linux渗透测试教程之免杀Payload生成工具Veil

    Kail Linux渗透测试教程之免杀Payload生成工具Veil 免杀Payload生成工具——Veil Kail Linux渗透测试教程之免杀Payload生成工具Veil,Veil是一款利用M ...

  8. CTF必备技能丨Linux Pwn入门教程——PIE与bypass思路

    Linux Pwn入门教程系列分享如约而至,本套课程是作者依据i春秋Pwn入门课程中的技术分类,并结合近几年赛事中出现的题目和文章整理出一份相对完整的Linux Pwn教程. 教程仅针对i386/am ...

  9. CTF必备技能丨Linux Pwn入门教程——ShellCode

    这是一套Linux Pwn入门教程系列,作者依据i春秋Pwn入门课程中的技术分类,并结合近几年赛事中出现的一些题目和文章整理出一份相对完整的Linux Pwn教程. 课程回顾>> Linu ...

随机推荐

  1. [MySQL] INFORMATION_SCHEMA 数据库包含所有表的字段

    sql注入后可以通过该数据库获取所有表的字段信息 1. COLLATIONS表 提供有关每个字符集的排序规则的信息. COLLATIONS表包含以下列: COLLATION_NAME 排序规则名称. ...

  2. 微信小程序-查询快递

    1.新建快速启动项目 2.在设置里面勾选不校验合法域名,以防编译报错 3.在app.json中改一下窗口表现:app.json—"navigationBarTitleText": ...

  3. vue从入门到进阶:自定义指令directive,插件的封装以及混合mixins(七)

    一.自定义指令directive 除了核心功能默认内置的指令 (v-model 和 v-show),Vue 也允许注册自定义指令.注意,在 Vue2.0 中,代码复用和抽象的主要形式是组件.然而,有的 ...

  4. docker研究-1

    Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的.可移植的.自给自足的容器.开发者在笔记本上编译测试通过的容器可以批量地在生产环境中部署,包括VMs(虚拟机).bare metal. ...

  5. 13.Odoo产品分析 (二) – 商业板块(6) –采购(3)

    接上一篇  查看Odoo产品分析系列--目录 接上一篇Odoo产品分析 (二) – 商业板块(6) –采购(2) 7. 仓库 仓库是在安装采购管理模块时出现的菜单.用于管理工厂库存,包括已经在手的货物 ...

  6. vue 构建项目遇到的问题

    1.我在打包完成后,打开index.html文件发现地址并没有携带路由. config下的 index.js 中的build命令的配置有一个属性叫assetsPublicPath,它的值为‘/’.意思 ...

  7. 短连接、长连接与keep-alive

    短连接与长连接 通俗来讲,浏览器和服务器每进行一次通信,就建立一次连接,任务结束就中断连接,即短连接.相反地,假如通信结束(如完成了某个HTML文件的信息获取)后保持连接则为长连接.在HTTP/1.0 ...

  8. 微信小程序中如何获取for循环的item相关值到JS页面的问题

    今天小程序开发过程中,遇到了这个棘手的问题.由于我没有前端基础,只是知道一点儿基本的HTML标签,所以卡了好久,特此分享,望后来的你,可以有所收获. measure  step 1  *.WXML: ...

  9. Android 与Java 进程退出 killProcess与System.exit

    android所有activity都在主进程中,在清单文件Androidmanifest.xml中可以设置启动不同进程,Service需要指定运行在单独进程?主进程中的主线程?还是主进程中的其他线程? ...

  10. springboot 学习之路 1(简单入门)

    目录:[持续更新.....] spring 部分常用注解 spring boot 学习之路1(简单入门) spring boot 学习之路2(注解介绍) spring boot 学习之路3( 集成my ...