Python3 - 学习之Linux极简教程(学习准备)
Posted 韩俊强
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python3 - 学习之Linux极简教程(学习准备)相关的知识,希望对你有一定的参考价值。
前言:
此篇文章是为Python学习做铺垫,主要学习内容:
01.操作系统历史概述
02.购买和连接云服务器
03.Bash和Linux命令
04.获取命令的帮助
05.文件操作相关命令-1
06.文件操作相关命令-2
07.使用包管理工具安装软件
08.配置阿里云防火墙
09.使用源代码构建安装软件
10.安装Python3
11.配置PATH环境变量
12.安装mysql
13.Vim的基本操作-1
14.Vim的基本操作-2
15.定制Vim+修改文件权限
16.Vim录制宏和播放宏操作
17.Vim设置快捷键
18.Vim多文件多窗口操作
19.版本控制历史+源代码构建安装Git
20.安装tldr工具
21.网络相关命令+搜索命令
22.使用Git实施版本控制-1
23.在Gitee上创建Git仓库
24.添加远端仓库同步代码
25.生成密钥对+在Git服务器部署公钥
26.克隆代码+更新代码
27.解决代码冲突问题
28.进程管理和重定向操作
29.系统管理相关命令
30.用户管理相关命令
31.etc目录下几个重要的文件
32.解决Git无法https连接的问题
33.安装nodejs和hexo-cli
34.使用hexo-cli生成博客
35.配置域名解析服务
36.使用Pages服务托管博客
37.Shell编程概述
38.定时任务的使用
一、操作系统历史概述
计算机系统由硬件(hardware)和软件(software)两部分构成。
硬件: 运算器、控制器、存储器(RAM)、输入设备、输出设备
软件:系统软件和应用软件
操作系统(Operating System):直接覆盖在硬件上的软件,
提供人机交互的接口(界面)。
~ Windows (Server、Advanced server、Data Center)
~ Machintosh ---> macOS
~ Unix ---> AIX / Hp-Ux / Solaris
~ Linux
1946 ENIAC ---> 5000
1960s ---> IBM ---> OS/360
1965 GE / MIT / Bell ---> Multics ---> 1969
ken ---> Space Trvel ---> PDP-7 ---> Unics ---> B
dmr ---> C ---> Unix
Unix ---> BSD ---> FreeBSD ---> Macintosh ---> macOS ---> ios
Unix ---> Minix ---> Linux ---> android
类Unix操作系统
IBM PC兼容机
Julia / Python / R
Jupyter
Linux发行版本:
~ Redhat
~ VirtualBox
~ VMware
-
为何云服务器学习:
- 性价比非常高
- 运维管理非常简单
- 伸缩性灵活性俱佳
连接云服务器需要使用SSH协议(安全的远程连接)—> TCP / 22
二、Bash和Linux命令
SSH客户端工具:
~ Termius
~ FinalShell / XShell / Putty
-
Shell —> Bash (Bourne Again SHell) —> 壳程序
- Ta:命令补全和路径补全
Linux命令:命令 [参数1 参数2 …] [命令作用的对象]
~ who - 查看谁登录了系统
~last - 最近登录的用户记录
~lastb - 最近登录失败的用户记录
~ clear - 清楚屏幕上的输出
~ cal - 查看日历
-3:显示前后3个月的日历
~ date - 查看时间日期
~ whatis - 查看命令的描述
~ whereis - 获取命令的路径
~ shutdown - 关机或重启
~ logout / exit - 退出登录
~ ps - 查看进程信息
~ history - 查看历史命令
- !!:把刚才的命令再执行一遍
- !历史命令编号:重新执行历史命令
-c:清楚历史命令
三、常用快捷键:
~ Tab:命令补全和路径补全
~ Ctrl+C:终止一个命令的执行
~ Ctrl+w:删除一个单词
~ Ctrl+u:从光标所在的位置删除到行首
~ Ctrl+k:从光标所在位置删除到行尾
~ Ctrl+y:取出刚刚被删除的内容
~ Ctrl+a:光标回到行首
~ Ctrl+e:逛遍回到行尾
~ Ctrl+d:结束输入
~ Ctrl+z:把一个正在运行的命令暂停放到后台
四、文件管理
~ pwd:print working directory:显示当前的工作目录
- 以root身份登录:/root
- 已xiaoming身份登录:/home/xiaoming
~ cd - change directory:切换工作目录
绝对路径:/
相对路径:以当前路径为基础
~ . ---> 当前目录
~ .. ---> 上级目录
- /root:超级管理员的用户主目录
- /home:普通用户的用户主目录
- /etc:配置文件
- /usr:可执行的命令以及用户安装的程序
- /var:程序运行中产生的数据和日志
- /proc:进程文件
~ cpuinfo / meminfo
~ ls - list directory contents:列出文件夹的目录
-a - all - 显示所有文件
-l - long - 长格式查看 等同于ll(命令别名方法方法:alias 'rm=rm -rf')
~ -:文件
~ d:文件夹
~ l:软连接(符号连接,相当于Windows系统的快捷方式)
~ cat - concatenate - 连接多个文件(查看文件内容)
-n - number - 显示行号
~ mkdir - make directory - 创建文件夹
-p abc/a 创建abc文件并创建a文件,例如:mkdir -p abc/a
~ rmdir - remove empty directory - 删除空文件夹
~ touch - 创建空文件或者修改文件的最后访问时间
~ rm - remove - 删除文件或文件夹
-i - interactive - 交互式删除
-f - force - 强制删除
-r - recursicve - 递归式删除
~ 查看文件:cat / tac / head头 / tail尾巴 / more / less / od(8进制) / rev 反向查看
~ cp - copy - 复制(拷贝)文件
-r - recursive - 递归式拷贝
~ mv - move - 移动文件或文件夹
-在相同的路径下移动文件相当于是重命名操作
~ file - 查看文件的性质
~ wc - word count - 统计文件的字符数、单词数、行数
-l - line:行数
-w-word:单词数(中文文件不准确)
-c-character:字符数(中文文件不准确)
~ uniq - unique - 去重
-c - count:统计重复的次数
~ sort - 排序
-r - reverise:反转
-n - number:按数值大小排序
~ iconv - 编码转换
-f - from:原始编码
-t - target:目标编码
gb2312 - 国标码(常用汉字、平假名、片假名)
gbk - 国标码扩展码
gb18030 - 收录了汉字、少数民族文字
Unicode - 万国码 - 字符集
~ uft-8
a - 一个字节
韩 - 三个字节
😄 - 四个字节(Emoji字符)
~ utf-16
~ utf-32
五、搜索命令
~ grep - 搜索内容
~ find - 查找文件
-name:根据名字查找
-size:根据大小查找 eg:find / -size +100M | ll 查找大于100M的文件
-atime / ctime / mtime :根据时间查找
六、文字处理
~ sed
~ awk
七、网络相关
~ wget - 网络下载器
- wget https://www.sohu.com/
- wget https://www.sohu.com/ -O sohu.html
- wget https://inews.gtimg.com/newsapp_bt/0/12171811596_909/0/
~ scp - 安全的文件拷贝(跨网络拷贝文件)
~ sftp - 安全的文件传输
~ ping - 网络可达性检查
- ICMP - Internet Conytrol Management Protocol
- RTT - Round Trip Time
- TTL - time to live
- Contrl C 停止ping
Ping to Death --- DDos
分布式拒绝服务攻击:Distributed Deny of Service
DDoS高防服务(防D) ---> 20w
~ ifconfig / ip ---> 本机网络信息
~ netstat ---> 查看网络端口的使用情况 netstat -nltp
-n: 以数值的方式查询网络端口信息
-t: TCP(只查看TCP协议的连接)
-l: listen(监听状态)
-p: process(进程)
~ ssh ---> 安全远程连接
如果公司有多台服务器,可以从一台服务器连接到其他服务器,一般情况下,多台服务器中只有一台允许从公网直接访问,
其他服务器都要通过这台服务器使用ssh的方式进行连接,不允许从公网直接访问,相当于做了物理隔离,而这台可以从公网通过SSH直接访问的服务器,
我们通常称之为跳板机(跳板服务器)。
- ssh root@8.140.96.62
八、版本控制工具
~ Git - 分布式版本控制系统
~ CVS - Concurrent Version System
~ VSS - Visual Source Safe
---> 锁定模式
~ 2000 ---> Subversion ---> SVN
---> 中央集权型的版本控制系统
---> 合并模式
~ 2005 ---> Bitkeeper ---> Git / Mercurical
---> 即使没有中央服务器也能实施版本控制
安装Git(源代码构建安装)
~ 下载:wget https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.26.2.tar.gz
~ 解压缩和解归档:tar -zxvf git-2.29.2.tar.gz
~ 进入文件夹:cd git-2.29.2
~ 配置: ./configure --prefix=/usr/local/
无法链接https:
- make clean
- ./configure --prefix=/usr/local --with-curl=$(which curl) --with-expat
确认是否可以https:
- cd /usr/local/libexec/git-core/
- ll | grep https ; 打印 -rwxr-xr-x 4 root root 11910624 Dec 25 19:07 git-remote-https 即可
~ 补充依赖项:yum install -y libcurl libcurl-devel
~ 构建和安装:make && make install
~ 检查:git --version
Git的使用
~ 初始化(创建本地版本控制仓库):git init
~ 添加文件到仓库的暂存区:
- git add <filename>
- git add .
~ 从暂存区移除文件:git rm --cached <filename>
~ 配置用户名和邮箱:
- git config --global user.email "532167805@qq.com"
- git config --global user.name "harry"
~ 查看版本控制的状态:git status
~ 将暂存区的文件同步到本地仓库:git commit -m '项目初始版本'
~ 查看提交日志:
- git log
- git log --pretty=oneline --abbrev-commit --graph
~ 用暂存区恢复工作区:git restore <filename>
- 误删除 / 误修改
~ 版本回退:git reset --hard 66c99bc (版本号选前几位即可)
- git reflog 查找历史版本
- git remote -v
- git remote remove origin 移除远程仓库
- 添加 git remote add origin git@e.coding.net:HanJunqiang/AIChangeFace/pythonStudy.git
~ 将代码推到服务器
- git push -u origin master
~ 从服务器克隆代码到本地
- git clone git@e.coding.net:HanJunqiang/AIChangeFace.git
- git clone git@e.coding.net:HanJunqiang/AIChangeFace.git code
- git clone --depth=1 git@e.coding.net:HanJunqiang/AIChangeFace.git code(路径) clone最新
~ 获取服务器上的代码:
- git pull ---> git fetch + git merge
- 默认:fast-forward
-
加密技术:
-
对称加密:加密和解密使用同一个密钥,例如:AES
-
非对称加密:加密和解决不是同一个密钥,例如:RSA
-
生成密钥对:
- ssh-keygen -t rsa -b 2048 -C “532167805@qq.com”
-
解决冲突:
- git push ---> rejected push冲突
- git pull ---> CONFLTCT
- git diff ---> 检查冲突的位置
- 协商解决有冲突的文件,重新提交
- git push
九、用户管理
~ 添加用户:useradd / adduser 用户名
~ 删除用户:userdel 用户名
~ 修改用户设置:usermod
-g:修改用户组
-d:修改用户主目录
~ 修改密码:passwd
-e:设置密码过期 passwd -e xiaohange
-i:设置密码过期多少天后禁用该用户
~ 修改密码有效期:chage
change -M 100 -W 15 -I 7 xiaohange
设置100天以后必须改密码,如果快过期7天时还没改密码将被禁止邓旒
~ 用户组管理:分组是为了更方便的管理不同的用户
- groupadd 用户组名
- useradd -g mpuser shizhaoyu 创建用户并加到用户组
- chgrp mpuser xiaohange 把已创建的用户未在分组的加到分组
~ 切换用户:su - switch user
~ 以超级管理员身份执行命令:sudo - super user do
- visudo - 修改sudo权限用户列表; 用户必须在sudoer清单中
- 超级管理员可以使用visudo修改这个清单
二进制改文件权限:
7 6 0
110 110 000
rwx rw- r--
7 5 5
111 101 101
rwx r-x r-x
chmod 755 test.py
修改文件权限:
所有者 r读 w写 x执行
read write execute
同组用户 r - -
read no write noexecute
其他用户 r - -
read no write noexecute
~修改文件权限:
- chmod u+x,g+x,o+x mycal.py
- chmod g+rwx 文件夹
- chmod o-x mycal.py
- chmod +x ./test.sh
~ 修改文件所属用户组
- chgrp 用户组 文件名
~ 修改文件所有者:
- chown 用户名 文件名
几个重要的文件:
- /etc/passwd: 用户名、口令、用户组、主目录、壳程序
- /ect/group: 用户组信息
- /etc/shadpw: 用户密码(处理过的密码,x代替)
如果希望一个可执行程序在任意路径下都能够直接运行,可以将文件所在的
目录加入PATH环境变量或者在/usr/bin/目录下给该文件做一个符号链接
云服务器 —> Web服务器(Apache、nginx、Tengine)
十、软件和服务安装管理
1.使用包管理工具
~ yum - yellowdog updater modified
- 查找:yum search nginx
- 安装:yum install -y nginx.x86_64 (-y安装过程默认都恢复yes)
- 信息:yum info nginx
- 卸载:yum erase -y nginx
- 更新:yum update nginx
- 查看安装的包:yum list installed
~ yum list installed | grep nginx
~ rpm - redhat package manager
附:使用Nginx
~ 启动:
- CentOS 6.x:service nginx start
- CentOS 7.x:systemctl start nginx
~ 停止:systemctl stop nginx
~ 重启:systemctl restart nginx
~ 查看状态:systemctl status nginx
~ 开机自启:systemctl enable nginx
~ 禁用开机自启:systemctl disable nginx
~ 默认网址目录:/usr/share/nginx/html/index.html
MySQL安装:
~ rpm - redhat package manager
rpm -ivh mysql-community-common-5.7.32-1.el7.x86_64.rpm
tar -xvf mysql-5.7.32-1.el7.x86_64.rpm-bundle.tar -C mysql
yum list installed | grem maria 如果有先移除,不然依赖库冲突 :
yum erase -y mariadb-libs
rpm -ivh mysql-community-common-5.7.32-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.32-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-compat-5.7.32-1.el7.x86_64.rpm 库文件兼容包
rpm -ivh mysql-community-devel-5.7.32-1.el7.x86_64.rpm 开发包
rpm -ivh mysql-community-client-5.7.32-1.el7.x86_64.rpm 客户包
yum install -y libaio libbaio-devel
rpm -ivh mysql-community-server-5.7.32-1.el7.x86_64.rpm 服务包
启动MySQL:systemctl start mysqld
连接MySQL:mysql -u root -p 密码
修改密码:mysqladmin -uroot password 'yourpassword'
远程连接数据库:mysql -uroot -p -h192.168.137.10 -P3306
MySQL ---> MySQL AB ---> Sun Microsystem ---> Oracle
|_____ MariaDB(开源分支)
安装Redis服务
~ 下载:wget https://download.redis.io/releases/redis-5.0.14.tar.gz
~ 解缩:gunzip redis-5.0.14.tar.gz ---> redis-5.0.14.tar (归档文件)
~ 压缩:gzip redis-5.0.14.tar ---> redis-5.0.14.tar.gz
~ 解归档:tar -zxvf redis-5.0.14.tar 解压缩解归档
-x - eXtract - 抽取(解归档)
-v - verbose - 显示详细过程
-f - file - 指定待解归档的文件的名字
说明:上面两个操作(解压缩和解归档)如果想一步到位,可以使用下面的命令
tar -xvf redis-5.0.14.tar.gz
2.源代码构建安装
把C语言的源代码经过编译生成二进制的可执行程序
~ yum install -y gcc
~ gcc --version
~ make --version
~ cd redis-5.0.14
~ make && make install
- && - 第一个命令如果成功就执行第二个
- || - 第一个命令如果执行失败就执行第二个
- ; - 不管第一个命令成功失败都要执行第二个
~ redis-server --version / redis-cli --version
3.直接下载对应的二进制程序
nodejs:
~ wget https://nodejs.org/dist/v16.13.1/node-v16.13.1-linux-x64.tar.xz
~ xz -d node-v16.13.1-linux-x64.tar.xz
~ tar node-v16.13.1-linux-x64.tar
~ cd node-v16.13.1-linux-x64
~ 查看 /root/node-v16.13.1-linux-x64/bin , corepack node npm npx 有这些工具就够了
~ 添加PATH /root/node-v16.13.1-linux-x64/bin 到 .bash_profile 重启
3.脚本安装redis-server
```
#!/bin/bash
install_redis()
if ! which redis-server > /dev/null
then
cd /root
wget $1$2'.tar.gz' >> install.log
gunzip /root/$2'.tar.gz'
tar -xf /root/$2'.tar'
cd /root/$2
make >> install.log
make install >> install.log
echo '安装完成'
else
echo '已经安装过Redis'
fi
install_redis 'https://download.redis.io/releases/' 'redis-5.0.9'
```
命令别名:
alias ‘ll=ls -l’
unalias ll
附:安装Python3.9
~ 下载:wget https://www.python.org/ftp/python/3.9.0/Python-3.9.0.tar.xz
~ 认证:md5sum Python-3.9.0.tar.xz 打印:6ebfe157f6e88d9eabfbaf3fa92129f6
~ 解压缩:xz -d Python-3.9.0.tar.xz ---> Python-3.9.0.tar
-d - decompress 解压
-z - zip 压缩
~ 解归档:tar -xvf Python-3.9.0.tarz
~ 或许用到:yum -y groupinstall "Development tools"
~ 补充底层依赖项 yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel libdb4-devel libpcap-devel xz-devel libffi-devel
其中CentOS.8.x有两个依赖项招不到,因为默认有替代项,可以忽略
~ 配置:./configure --prefix=/usr/local/python3
[make clean]
~ 构建和安装: make && make install (大约需要跑20分钟)
安装完成提示:
WARNING: The script easy_install-3.9 is installed in '/usr/local/python3/bin' which is not on PATH.
Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
WARNING: The scripts pip3 and pip3.9 are installed in '/usr/local/python3/bin' which is not on PATH.
Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
大概意思是: /usr/local/python3/bin 目录,没有放在PATH变量底下;
~ 配置环境变量:
/etc/bashrc ---> 系统环境变量
~/.bash_profile ---> 用户环境变量
export PATH=$PATH:/usr/local/python3/bin
vim: visual editor modefied
vim .bash_profile
a 编辑
PATH=$PATH:$HOME/bin:/usr/local/python3/bin
zz(大写)保存退出;
~ 创建符号链接:
ln -s /usr/local/python3/bin/python3 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3 /usr/local/bin/pip3
Python有很多种实现版本:
C语言 ---> CPython ---> C/C++
Java语言 ---> JPython ---> Java
C#语言 ---> IronPython
Python语言 ---> PyPy ---> JIT
SFTP-安装和使用vsftpd:
~ yum install -y vsftpd - 安装
~ systemctl enable vsftpd.service - 设置开机启动
~ systemctl start vsftpd.service - 启动
~ systemctl status vsftpd.service - 查看状态
配置FTP打开配置文件:
~ vi /etc/vsftpd/vsftpd.conf
# 修改配置 12 行
anonymous_enable=NO
修改配置 33 行
# anon_mkdir_write_enable=YES
修改配置48行
# chown_uploads=YES
修改配置72行
# async_abor_enable=YES
修改配置82行
# ascii_upload_enable=YES
修改配置83行
# ascii_download_enable=YES
修改配置86行
# ftpd_banner=Welcome to blah FTP service.
修改配置100行
# chroot_local_user=YES
在末尾添加:
use_localtime=YES
listen_port=21
idle_session_timeout=300
guest_enable=YES
guest_username=vsftpd
user_config_dir=/etc/vsftpd/vconf
data_connection_timeout=1
virtual_use_local_privs=YES
pasv_min_port=40000
pasv_max_port=40010
accept_timeout=5
connect_timeout=1
allow_writeable_chroot=YES
防火墙设置:
~ vi /etc/sysconfig/iptables (iptables防火墙)
添加:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 40000:40010 -j ACCEPT
重启vsftpd服务器:
~ systemctl restart vsftpd.service
客户端工具登录:
~ FileZilla - SFTP文件协议 - root - 密码
十一、进程管理
~ jobs:查看自己放到后台任务
~ bg %编号:把暂停的后台任务放到后台运行起来(background)
~ fg %编号:把后台任务放到前台运行起来(foreground)
~ 命令 &:把命令放到后台运行
~ ps:Processes - 查看进程
- ps aux / ps -ef 查看所有进程
- ps aux | grep redis
~ kill -9 PID:根据PID(进程编号)结束进程
~ pkill / killall:根据进程的名字结束进程
~ top:进程管理器(相当于Windows系统资源管理器)
重定向和管道:
~ >:输出重定向(覆盖式写入)
~ >>:追加输出重定向(新内容写到原来内容的后面)
~ 2>:错误输出重定向
~ <: 输入重定向
~ | :管道 - 前一个进程的输出就是下一个进程的输入
十二、系统管理
~ uptime: 查看服务器运行时长
~ dmesg: 查看系统启动诊断信息
~ free:查看空闲内存
~ sar:查看系统资源(CPU)使用情况
~ df / du:查看外部设备挂载和使用的情况
~ fdisk:查看硬盘分区信息
十三、Linux系统获取帮助
~ man - 查看手册
~ --help - 查看命令帮助
~ 直接搜索在线文档:https://man.linuxde.net/
~ tldr - 三方查看命令帮助的工具(特别人性化)
安装tldr帮助工具
~ yum imstall -y nodejs
~ node --version
~ npm config set registry http://registry.npmmirror.com/
~ npm config get registry 查看npm下载源
~ npm install -g tldr
~ tldr grep
~ tldr who
十四、Vim的使用
~ 命令模式:所有的按键代表一个操作命令
- 进入编辑模式
~ i / I / a / A / o / O
- 移动光标:
~ h / j / k / l ---> 配合数字使用
~ 0 / $ / w ---> 行首 / 行尾 / 下一个单词
~ G / gg ---> 把光标移动到指定的行
~ Ctrl+e / Ctrl+y ---> 翻行
~ Ctrl+f / Ctrl+b ---> 翻页
- 编辑内容:
~ dd 删除一行 可以配合数字; d0 / d$ / dw ---> 删除
~ u / ctrl+r ---> 撤销 / 重做
~ yy / p ---> 复制 / 黏贴 数字+命令
- 保存退出:ZZ
~ 编辑模式:可以编辑内容
ESC 从编辑模式回到命令模式
~ 末行模式:在最下面一行进行操作(底线命令模式)
: / ?
set nu - 添加行号 set nonu - 去除行号
- 退出:q退出 / q!强制退出 / wq保存退出 / qa退出所有
- 查找:/关键词 ?关键词
~ n:正向搜索
~ N:反向搜索
- 替换:
1,$s/新闻/小猫
1,$s/新闻/小猫/c
1,10s/a/@/g
c - confirm 确认
g - global 全局
i - ignore case 忽略
e - error 错误
- 设置:
~ set nu / set nonu ---> 行号
~ set hls / set nohls ---> 高亮
~ set ruler / set niruler --->标尺
~ set ts=4 ---> 制表键的空格树
~ set expandtab ---> 把制表键自动变空格
~ set autoindent ---> 自动缩进
~ syntax off / syntax on ---> 语法高亮
- 映射快捷键
~ map <F2> gg1000000ddi ---> 命令模式下的快捷键
~ imap <F2> if __name__ == '__main__' : ---> 编辑模式下的快捷键
~ inoremap _main if __name__ == '__main__':
- 查看打开的文件
~ ls
~ b 编号
- 拆分屏幕窗口
~ vc 垂直拆分 / sp 水平拆分
~ Ctrl+w 切换窗口
Vim配置文件:
vim ~/.vimrc
1 set nu
2 set ts=5
3 set expandtab
4 set autoindent
5 set nohls
6 set ruler
7 syntax on
8 inoremap _main if __name__ == '__main__':
录制宏:
ESC q+寄存器名字a 开始录制
0回到行首
i编辑模式
tab 缩进
ESC 回到命令模式
j下移下一行
q结束录制
播放宏:
22(几行)@a(录制的文件名称)
专业的Python代码规范检查工具:pylint / flake8
~ E - Error - 代码有错误
~ W - Warning - 警告
~ R - Refactor - 建议重构代码
~ C - Convention - 不符合编程管理
pylint --disable=C0103 mycal.py 不检查C10103
Node.js
echo $PATH
~ wget https://nodejs.org/dist/v16.13.1/node-v16.13.1-linux-x64.tar.xz
十五、使用Hexo搭建博客:
~ 安装 Nodejs
~ wget https://nodejs.org/dist/v16.13.1/node-v16.13.1-linux-x64.tar.xz
~ 配置环境变量 PATH=$PATH:/root/node-v16.13.1-linux-x64/bin
~ 下载Hexo : npm install -g hexo-cli
~ 查看:hexo --version
~ 初始化: hexo init blog
~ 部署、更新:hexo g
~ 指定80端口并后台启动:hexo s -p 80 > hexo.log 2> hexo-error.log &
~ 博客配置:/root/blog/_config.yml 配置完需要 hexo g 并重新启动
~ 文章放置位置:/root/blog/source/_posts
十七、定时任务:
~ at 18:00+3days 创建定时
~ 回车后添加任务
~ Ctrl+d 结束添加任务
~ atq 查看定时任务
~ atrm 2 删除定时任
重复周期性的定时任务(克隆表):
~ crontab -e
~ 0,1,10,11 1-6 * 7-12 * find /root -name "*.log" -delete (分 小时 天 月 年)https://www.pppet.net/ 时间规则可以使用工具生成
铺垫已做好,继续加油💪🏻~☕️
以上是关于Python3 - 学习之Linux极简教程(学习准备)的主要内容,如果未能解决你的问题,请参考以下文章