Python学习-02 (其实是Linux基础)
1.与文本文件有关的命令
序号 | 命令 | 对应英文 | 作用 |
---|---|---|---|
01 | cat 文件名(-b/-n) | concatenate | 查看文件内容、创建文件、文件合并、追加文件内容等功能 |
02 | more文件名 | more | 分屏显示文件内容 |
03 | grep 搜索文本 文件名 | grep | 搜索文本文件内容 |
04 | gedit 文件名/地址 | 打开文件 |
1.1grep
-
Linux系统中
grep
命令是一种强大的文本搜素工具 -
grep
允许对文本文件进行 模式查找,所谓模式查找,又被称为正则表达式grep 文本 文件位置 grep as 123.txt
ps:文本有 space 时候,需要加“双引号”
选项[-options] 含义 -n 显示匹配及行号 -v 显示不包含匹配文本的所有行(相当于求反) -i 忽略大小写 -
常用的两种模式查找
参数 含义 ^a 行首,搜寻以 a
开头的行ke$ 行尾,搜寻以 ke
结束的行
1.2echo 文字内容
echo
会在终端中显示参数指定的文字,通常会和 重定向联合使用
1.3重定向>和>>
- Linux 运行将命令执行结果 重定向到一个 文件
- 将本应显示在终端上的内容 输出/追加 到指定文件中
其中
>
表示输出,会覆盖文件原有的内容>>
表示追加,会将内容追加到已有文件的末尾
1.4管道
- Linux 允许将 一个命令的输出 可以通过 管道 做为 另一个命令的输入
- 可以理解现实生活中的管子,管子的一头塞东西进去,另一头取出来,这里
|
的左右分为两端,左端塞东西(写),右端去东西(读)
常用的管道命令有:
more
:分屏显示内容
ls -lha ~ | more
grep
:在命令执行结果的基础上查询指定的文本
ls -lha ~ | grep Do
2.远程管理常有命令
2.1关机/重启
序列 | 命令 | 对应英文 | 作用 |
---|---|---|---|
01 | shutdown 选项 时间 | shutdown | 关机/重新启动 |
shutdown
选项 | 含义 |
---|---|
-r | 重新启动 |
-c | 取消关机计划 |
提示
- 不指定选项和参数,默认表示 1分钟之后 关闭电脑
- 远程维护服务器时,最好不要关闭系统,而应该重新启动系统
#重新启动操作系统,其中 now 表示现在
shutdown -r now
#立刻关机, 其中 now 表示现在
shutdown now
#系统在今天的 20:25 回关机
shutdown 20:25
#系统在过十分钟自动关机
shutdown +10
#取消之前指定的关机计划
shutdown -c
2.2查看或配置网卡信息
序号 | 命令 | 对应英文 | 作用 |
---|---|---|---|
01 | ifconfig | configure a network interface | 查看/配置 计算机当前的 网卡配置信息 |
02 | ping ip地址 | ping | 检测到目标ip地址的连接是否正常 |
2.2.1网卡和IP地址
网卡
-
网卡是一个专门负责网络通讯的硬件设备
-
IP地址是设置在网卡上的地址信息
我们可以把 电脑 比作 电话,网卡相当于 SIM卡,IP地址 相当于***电话号码***
IP地址
- 每台联网的电脑上都有IP地址,是保证电脑之间政策通讯的重要设置
注意:每台电脑的IP地址不能相同,否则会出现IP地址冲突,并且没有办法正常通讯。
2.2.2 ifconfig
-
ifconfig
可以 查看/配置 计算机当前的 网卡配置信息#查看网卡配置信息 ifconfig #查看网卡对应的 IP 地址 ifconfig | grep int
提示:一台计算机中有可能会有一个 物理网卡 和 多个虚拟网卡,在Linux中物理网卡的名字通常以
ensXX
表示 -
127.0.0.1
被称为本地回环
/环回地址
,一般用来测试本机网卡是否正常
2.2.3 ping
-
ping IP地址
检测到目标ip地址的连接是否正常# 检测到目标主机是否连接正常 ping IP地址 #检测本地网卡工作正常 ping 127.0.0.1
-
ping
一般用于检测当前计算机到目标计算机之间的网络 是否通畅,数值越大,速度越慢ping
的工作原理与潜水艇的声纳相似,ping
这个命令就是取自 声纳的声音网络管理员之间也常将
ping
用作动词,--------ping一下计算机X,看它是否开着 -
原理:网络上的机器都有 唯一确定的IP地址,我们给 目标IP地址 发送一个数据包,对方就要返回一个数据包,根据返回的数据包以及时间,我们可以确定目标主机的存在
提示:在Linux中,想要终止一个终端程序的执行,绝大多数都可以使用
CTRL + C
2.3 远程登录和复制文件
序列 | 命令 | 对应英文 | 作用 |
---|---|---|---|
01 | ssh 用户名@ip | secure shell | 关机/重新启动 |
02 | scp 用户名@ip:文件名或路径 文件名或路径 | secure copy | 远程复制文件 |
2.3.1 ssh基础(重点)
1.在Linux中ssh是 非常常用 的工具,通过 ssh客户端 我们可以连接到运行了 ssh服务器 的远程机器上
数据传输是加密,可以防止信息泄露
数据传输是压缩,可以提高传输速度
- ssh客户端是一种使用
Secure Shell(ssh)
协议连接到远程计算机到软件程序
2.科普:域名 和 端口号
域名
- 由一串 用点分隔 的名字组成,例如:
www.baidu.com
- 是 IP地址 的别名, 方便用户记忆
端口号
-
IP地址:通过 IP地址 找到网络上的 计算机
-
端口号:通过 端口号 可以找到 计算机上运行的应用程序
-
ssh服务器 的默认端口号是
22
,如果是默认端口号,在连接的时候,可以省略 -
常见服务端口号列表:
序号 服务 端口号 01 SSH 服务器 22 02 Web 服务器 80 03 HTTPS 443 04 FTP服务器 21
3.ssh 客户端的简单实用
ssh [-p port] user@remote
-
user
是在远程机器上的用户名,如果不指定的话默认为当前用户 -
remote
是远程机器的地址, 可以是IP/域名,或者是 后面会提到的别名 -
port
是***ssh Server 监听的端口***, 如果不指定, 就为默认值22
使用
exit
退出当前用户的登录在工作中,ssh服务器的端口号很有可能 不是22,如果遇到这种情况就需要使用**
-p
选项**,指定正确的端口号,否则无法正常连接到服务器
4.scp(重要)
-
scp就是
secure copy
, 是一个在Linux 下用来进行 远程拷贝文件 的命令 -
它的地址格式与ssh基本相同,需要注意的是,在指定端口时用的是大写的
-P
而不是小写#把本地当前目录下的 01.py 文件 复制到 远程 家目录下的 Desktop/01.py #注意:‘:’后面的路径如果不是绝对路径,则以用户的家目录作为参考路径 scp -P port 01.py user@remote:Desktop/01.py #把远程 家目录下的 Desktop/01.py 文件 复制到 本地当前目录下 01.py scp -P port user@remote:Desktop/01.py 01.py #加上 -r 选项可以传送文件夹 #把当前目录下的 demo 文件夹 复制到 远程 家目录下的 Desktop scp -r demo user@remote:Desktop #把远程 家目录下的 Desktop 服之到 当前目录下的 demo 文件夹 scp -r user@remote:Desktop demo
scp 一个文件地址 另一个文件地址 (其中 ssh服务器 在文件地址前 + user@remote:)
ssh服务器 以家目录 为原点
ssh客户端 以当前目录 为原点
选项 | 含义 |
---|---|
-r | 若给出的原文件事目录文件,则scp,将递归复制该目录下的所有子目录和文件, |
-p | 若远程 ssh服务器 的端口不是22,需要使用大写字母-P选指定端口 |
3.文件权限有关命令
1. ls -l扩展
- 文件/目录:第一个字符如果是
d
表示目录 - 权限:r w x read/write/excute
- 拥有者权限
- 组权限
- 其他用户权限
- 硬链接数:通俗地讲,就是有多少种方式,可以访问到当前目录/文件
- 大小
- 时间
- 名称
2. chmod 简单实用(重要)
-
chmod
可以修改 用户/组 对 文件/目录 对权限 -
命令格式如下:
chmod +/-rwx 文件名/目录名
3. 超级用户的概念
- Linux系统中的
root
账号通常 用于系统的维护和管理,对操作系统的所有资源 具体所有访问权限 - 在大多数版本的 Linux中,都不推荐 **直接使用
root
账号登录系统 - 在Linux安装过程中,系统会自动创建一个用户账号,而这个默认的用户就称为**“标准用户”**
sudo
-
su
是substitute user
的缩写, 表示 使用另一个用户的身份 -
sudo
命令用来以其他身份来执行命令,预设的身份为root
-
用户使用
sudo
时,必须先输入密码,之后 5分钟的有效期限,超过期限则必须重新输入密码若其未经授权的用户企图使用
sudo
,则会发出警告邮件给管理员
4. 组管理 终端命令
提示:创建组/删除组 的终端命令都需要通过
sudo
执行
序号 | 命令 | 作用 |
---|---|---|
01 | groupadd 组名 | 添加组 |
02 | groupdel 组名 | 删除组 |
03 | cat/etc/group | 确认组信息 |
04 | chgrp 组名 文件/目录名 | 修改文件/目录都所属组 |
提示:
- 组信息保存在
/etc/group
文件中/etc
目录是专门用来保存系统配置信息都目录