day1Linux基础
计算机 = 硬件 + 软件
计算机5大部件:运算器、控制器、存储器、输入设备、输出设备
软件 = 系统软件 + 应用软件
操作系统是最为重要的系统软件,是人机交互的界面和接口
操作新系统又可以分为字符界面和图形界面
Shell程序 - 壳程序 - BASH
man - manual - 查看帮助手册
URL - Universal Resource Locator - 统一资源定位符
URI - Universal Resource Identifier - 统一资源标识符
linux系统有7个初始化级别
(init)
0 - 关机
1 - 单用户模式
2 - 多用户模式
3 - 多用户网络模式
4 - 保留
5 - 图形化
6 - 重启
SSH/TCP
自动补全 - tab
pwd - 查看当前工作目录
/ - 根目录 - 相当于windows下的计算机
/root - 超级管理员的用户主目录
/home/hellokitty - 普通用户的主目录在/home
ls - 查看文件和文件夹
ls -a 查看所有文件包括隐藏文件,隐藏文件的名字前有点
ls -l 长格式查看
mkdir - 创建文件夹 make directory
-p -在需要的时候创建父文件夹
rm - 删除文件 - remove
-r -递归式的删除(用于删除文件夹)
-f - 强制删除(不提示) - force
-i - 交互式删除,询问是否删除
cp - 复制文件
-R -递归式复制,用于复制文件夹
mv - 移动/剪切文件,还能修改文件名
cat - 连接多个文件的内容并显示 - concatenate
head - 查看文件开头
tai -查看文件的结尾部分
more - 分屏查看文件
cd - 切换目录 -change directory
-绝对路径 - 以根路径作为访问的基路径
-相对路径 - 以当前路径作为访问的基路径
‘~’ - 当前用户主目录如果是root用户就是/root
touch - 如果文件不存在就创建空文件
如果文件存在就修改文件的最后访问时间
iconv -f gb2312 -t utf-8 文件名 - 将编码为gb2312的原文件的字符编码转为utf-8
grep - 搜索文件内容
安装软件
1.包管理工具 - yum - 需要连接仓库,只能安装仓库中给的东西
yum search 软件名 - 搜索仓库中的软件包
yum -y install 软件名1 软件名2 - 安装软件包(-y跳过安装时的提问,全部是yes)
yum remove/erase 软件名 - 删除软件包
yum upgrade 软件名- 更新单个软件包
yum update - 更新所有软件
yum list installed - 查看已安装的软件
yum info 软件名 - 查看软件包的信息
rpm - 红帽包管理器
rpm -ivh 文件名.rpm 安装
rpm -e 文件名 卸载
rpm -qa | grep mysql 查找
2.源代码构建安装
wget 下载源代码
解压缩/解归档
gunzip / xz -d
tar -xvf /tar -cvf
添加必要的依赖项 - yum
构建前的配置 - configure - -->生成makefile文件(如果没有configure文件不存在只有makefile直接构建安装)
构建和安装 - make&&make install
配置必须要的环境变量 - export/修改配置文件
python的包管理工具 - pip
版本控制 - git
启动服务
systemctl start nginx- 启动服务
systemctl restart nginx- 重新启动服务
systemctl stop nginx- 停止服务
systemctl status nginx- 查看状态
systemctl enable nginx- 开机自启
systemctl disable nginx- 禁止开机自启
0.下载python3.7的源码
- 安装编译Python源代码的依赖项
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
- 安装前的配置
./configure --prefix=/usr/local/python37 --enable-optimizations
- 构建和安装
make && make install
- 注册环境变量(临时)
export PATH=$PATH:/usr/local/python37/bin
echo $PATH
- 给python3做一个快捷方式(符号链接/软链接)
ln -s /usr/local/python37/bin/python3 /usr/bin/python3
vim 文本编辑器
命令模式 - 案件都是对应的命令
编辑模式 -可以编辑内容
dd - 删除一行
末行模式 - 可以键入命令配置vim
alias rm=‘rm -f’ 设置rm -f的别名为fm
unalias 取消别名
wc 文件名 - 统计文件的行数 、字数
-l 行数
-w 单词书
-c 字符数
echo - 回显
echo abc >文件1 - 将abc添加到文件1(一个>添加的会覆盖之前添加的)
echo efg >>文件2 - 将efg追加到文件2
uniq 文件名 - 将目标文件去重
uniq -c 去重并且统计
sort 文件 - 对文件排序
sort -r - 倒序排序a
ctrl + a 光标移到行首
ctrl + e 光标移到行尾
ctrl + w 删除一个单词
ctrl + u 删除整行
cat 文件名 | tr ‘a’ ‘@’ - 将文件中的a替换成@显示
tr ‘a’ ‘@’ < 文件 - 将文件中的a替换成@显示
更新pip3 : pip3 install -U pip
.vimrc 配置:
数据处理步骤:
过滤 --> 映射 --> 规约
面试:一句话求阶乘
(lambda num: functools.reduce(int.mul, range(1, num + 1)))(5)
mysql数据库安装步骤
1.mkdir mysql (创建mysql的目录)
2.cd mysql/
3.wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar (下载mysql版本)
4.tar -xvf mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar(解压安装包)
5.rpm -ivh mysql-community-common-5.7.26-1.el7.x86_64.rpm (安装需要的文件)
6.rpm -ivh mysql-community-libs-5.7.26-1.el7.x86_64.rpm
7.rpm -ivh mysql-community-client-5.7.26-1.el7.x86_64.rpm
8.rpm -ivh mysql-community-server-5.7.26-1.el7.x86_64.rpm
9.yum install libaio(安装依赖包)
10.rpm -ivh mysql-community-server-5.7.26-1.el7.x86_64.rpm
11.yum list installed | grep mysql(检查是否安装成功)
12.systemctl start mysqld (启动mysql服务)
13.cd /var/log (进入配置文件)
14.ls
15.cat mysqld.log | grep password (查找初始生成的密码并复制)
16.mysql -u root -p (将刚才复制的密码用来登录)
- set global validate_password_policy=0; (设置密码强度)
- set global validate_password_length=0; (设置密码长度)
- alter user 'root'@'localhost' identified by '123456';(修改初始密码)
- create user 'root'@'%' identified by '123456';(创建可以用作远程连接数据库的账号)
- grant all privileges on . to 'root'@'%' with grant option;
- flush privileges;