day1Linux基礎(chǔ)
計(jì)算機(jī) = 硬件 + 軟件
計(jì)算機(jī)5大部件:運(yùn)算器望众、控制器、存儲(chǔ)器、輸入設(shè)備竞漾、輸出設(shè)備
軟件 = 系統(tǒng)軟件 + 應(yīng)用軟件
操作系統(tǒng)是最為重要的系統(tǒng)軟件仿耽,是人機(jī)交互的界面和接口
操作新系統(tǒng)又可以分為字符界面和圖形界面
Shell程序 - 殼程序 - BASH
man - manual - 查看幫助手冊
URL - Universal Resource Locator - 統(tǒng)一資源定位符
URI - Universal Resource Identifier - 統(tǒng)一資源標(biāo)識(shí)符
linux系統(tǒng)有7個(gè)初始化級(jí)別
(init)
0 - 關(guān)機(jī)
1 - 單用戶模式
2 - 多用戶模式
3 - 多用戶網(wǎng)絡(luò)模式
4 - 保留
5 - 圖形化
6 - 重啟
SSH/TCP
自動(dòng)補(bǔ)全 - tab
pwd - 查看當(dāng)前工作目錄
/ - 根目錄 - 相當(dāng)于windows下的計(jì)算機(jī)
/root - 超級(jí)管理員的用戶主目錄
/home/hellokitty - 普通用戶的主目錄在/home
ls - 查看文件和文件夾
ls -a 查看所有文件包括隱藏文件合冀,隱藏文件的名字前有點(diǎn)
ls -l 長格式查看
mkdir - 創(chuàng)建文件夾 make directory
-p -在需要的時(shí)候創(chuàng)建父文件夾
rm - 刪除文件 - remove
-r -遞歸式的刪除(用于刪除文件夾)
-f - 強(qiáng)制刪除(不提示) - force
-i - 交互式刪除,詢問是否刪除
cp - 復(fù)制文件
-R -遞歸式復(fù)制项贺,用于復(fù)制文件夾
mv - 移動(dòng)/剪切文件君躺,還能修改文件名
cat - 連接多個(gè)文件的內(nèi)容并顯示 - concatenate
head - 查看文件開頭
tai -查看文件的結(jié)尾部分
more - 分屏查看文件
cd - 切換目錄 -change directory
-絕對(duì)路徑 - 以根路徑作為訪問的基路徑
-相對(duì)路徑 - 以當(dāng)前路徑作為訪問的基路徑
‘~’ - 當(dāng)前用戶主目錄如果是root用戶就是/root
touch - 如果文件不存在就創(chuàng)建空文件
如果文件存在就修改文件的最后訪問時(shí)間
iconv -f gb2312 -t utf-8 文件名 - 將編碼為gb2312的原文件的字符編碼轉(zhuǎn)為utf-8
grep - 搜索文件內(nèi)容
安裝軟件
1.包管理工具 - yum - 需要連接倉庫峭判,只能安裝倉庫中給的東西
yum search 軟件名 - 搜索倉庫中的軟件包
yum -y install 軟件名1 軟件名2 - 安裝軟件包(-y跳過安裝時(shí)的提問,全部是yes)
yum remove/erase 軟件名 - 刪除軟件包
yum upgrade 軟件名- 更新單個(gè)軟件包
yum update - 更新所有軟件
yum list installed - 查看已安裝的軟件
yum info 軟件名 - 查看軟件包的信息
rpm - 紅帽包管理器
rpm -ivh 文件名.rpm 安裝
rpm -e 文件名 卸載
rpm -qa | grep mysql 查找
2.源代碼構(gòu)建安裝
wget 下載源代碼
解壓縮/解歸檔
gunzip / xz -d
tar -xvf /tar -cvf
添加必要的依賴項(xiàng) - yum
構(gòu)建前的配置 - configure - -->生成makefile文件(如果沒有configure文件不存在只有makefile直接構(gòu)建安裝)
構(gòu)建和安裝 - make&&make install
配置必須要的環(huán)境變量 - export/修改配置文件
python的包管理工具 - pip
版本控制 - git
啟動(dòng)服務(wù)
systemctl start nginx- 啟動(dòng)服務(wù)
systemctl restart nginx- 重新啟動(dòng)服務(wù)
systemctl stop nginx- 停止服務(wù)
systemctl status nginx- 查看狀態(tài)
systemctl enable nginx- 開機(jī)自啟
systemctl disable nginx- 禁止開機(jī)自啟
0.下載python3.7的源碼
- 安裝編譯Python源代碼的依賴項(xiàng)
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
- 構(gòu)建和安裝
make && make install
- 注冊環(huán)境變量(臨時(shí))
export PATH=$PATH:/usr/local/python37/bin
echo $PATH
- 給python3做一個(gè)快捷方式(符號(hào)鏈接/軟鏈接)
ln -s /usr/local/python37/bin/python3 /usr/bin/python3
vim 文本編輯器
命令模式 - 案件都是對(duì)應(yīng)的命令
編輯模式 -可以編輯內(nèi)容
dd - 刪除一行
末行模式 - 可以鍵入命令配置vim
alias rm=‘rm -f’ 設(shè)置rm -f的別名為fm
unalias 取消別名
wc 文件名 - 統(tǒng)計(jì)文件的行數(shù) 棕叫、字?jǐn)?shù)
-l 行數(shù)
-w 單詞書
-c 字符數(shù)
echo - 回顯
echo abc >文件1 - 將abc添加到文件1(一個(gè)>添加的會(huì)覆蓋之前添加的)
echo efg >>文件2 - 將efg追加到文件2
uniq 文件名 - 將目標(biāo)文件去重
uniq -c 去重并且統(tǒng)計(jì)
sort 文件 - 對(duì)文件排序
sort -r - 倒序排序a
ctrl + a 光標(biāo)移到行首
ctrl + e 光標(biāo)移到行尾
ctrl + w 刪除一個(gè)單詞
ctrl + u 刪除整行
cat 文件名 | tr ‘a(chǎn)’ ‘@’ - 將文件中的a替換成@顯示
tr ‘a(chǎn)’ ‘@’ < 文件 - 將文件中的a替換成@顯示
更新pip3 : pip3 install -U pip
.vimrc 配置:
數(shù)據(jù)處理步驟:
過濾 --> 映射 --> 規(guī)約
面試:一句話求階乘
(lambda num: functools.reduce(int.mul, range(1, num + 1)))(5)
mysql數(shù)據(jù)庫安裝步驟
1.mkdir mysql (創(chuàng)建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 (啟動(dòng)mysql服務(wù))
13.cd /var/log (進(jìn)入配置文件)
14.ls
15.cat mysqld.log | grep password (查找初始生成的密碼并復(fù)制)
16.mysql -u root -p (將剛才復(fù)制的密碼用來登錄)
- set global validate_password_policy=0; (設(shè)置密碼強(qiáng)度)
- set global validate_password_length=0; (設(shè)置密碼長度)
- alter user 'root'@'localhost' identified by '123456';(修改初始密碼)
- create user 'root'@'%' identified by '123456';(創(chuàng)建可以用作遠(yuǎn)程連接數(shù)據(jù)庫的賬號(hào))
- grant all privileges on . to 'root'@'%' with grant option;
- flush privileges;