1. 程式人生 > >Linux下基礎及Python開發工具安裝

Linux下基礎及Python開發工具安裝

Linux下基礎及Python開發工具安裝

第一部分、

1.作業系統簡介
1.windows 圖形化介面
2.Linux 開源,安全,高效, **命令列操作介面

  3.unix   與linux是同根同源的,  大型的伺服器,商用,收費的
  4.mac os 蘋果的pc作業系統, 基於unix的,
  5.移動端android,基於linux作業系統的,   Android app 是用java開發的
  6.移動端ios,  基於unix作業系統 

2.linux系統的特點介紹,見ppt

二、安裝Linux真機—https://www.linuxidc.com/Linux/2016-04/130520.htm


1.網上下載ubuntu的映象(iso)檔案(版本)
2.將映象檔案燒錄帶U盤,並設定啟動項
3.重啟電腦 按下 F2, F10,F12, …delete… 進入bios系統,
4.設定從u盤啟動
5.****參考虛擬機器中安裝
6.設定檔案分割槽, 1.格式化硬碟, 2.window與linux共存(有一個空白的分割槽) 3.自定義分割槽

三、安裝虛擬機器VMWare,VirtualBox…

虛擬機器:其實就是一個軟體,在該軟體中可以安裝各種作業系統,虛擬機器就是模擬的一個計算機

1、VMWare軟體流程
詳情見安裝流程文件

2、安裝Ubuntu系統
詳情見安裝流程文件

3、如果出現VT禁用狀態的問題
需要開啟 inter virtual technology inter虛擬技術支援 ,
只有 core i5 及以上才支援…
1.重啟電腦
2.進入bios 系統, 按下 F2, F10,F12, …delete… 進入bios系統, 根據自己的品牌及型號查
3. 找到 inter virtual technology 開啟 儲存
4.重啟…

詳情見安裝流程文件

四、快捷鍵
1.ctrl + alt 按鍵, 將滑鼠從虛擬機器中切換出去
2.crtl + alt + T 快速開啟命令列終端
3.ctrl+l : 快捷鍵, 快速清除終端中的內容
4.crtl + alt + L 快速鎖屏

五、安裝VMWare Tools的流程

好處— 1.方便滑鼠的切換
2.方便從宿主機與虛擬機器之間檔案的複製
3.可以調整虛擬機器的檢視大小,方便使用

詳情見安裝流程文件
(VMWare Tools的作用:可以調整螢幕大小,可以直接將windows中的檔案複製貼上到Ubuntu下)
1、在虛擬機器的工具條上點選虛擬機器,點選之後選擇安裝 VMWare Tools
2、在彈出的CD/DVD的選項下,將tools的五個檔案複製貼上到我們在桌面上建立的soft資料夾中。
3、開啟終端(快捷鍵:ctrl+alt+t 可以在搜尋中輸入ter,點選terminal)
4、ls :展示當前目錄下的所有檔案
5、因為最初是在桌面上建立的soft資料夾,cd Desktop/ (cd : 開啟目錄並進入該目錄)
6、cd soft/
7、tar -zxvf VMWareXXXXXXX.gz (tar -zxvf :執行解壓縮命令,將gz格式的壓縮包解壓至當前soft目錄)
8、cd vmware-tools-distrib/ (進入解壓縮檔案目錄下)
9、sudo ./vmware-install.pl 回車
10、輸入開機密碼(開機密碼正確輸入即可,游標不會向後移動(不要使用小鍵盤,有可能小鍵盤處於關閉狀態)) 回車
11、第一次的選擇需要輸入yes (確認安裝)
12、其他步驟直接回車即可(一路回車至底)
13、見到enjoy安裝結束

點選虛擬機器工具條中的檢視 -> 自動調整大小 -> 自動適應客戶機 (關機重啟Ubuntu)
效果: 重啟後可以平鋪滿整個視窗, 可以全屏,居中

八、常用命令
tab 快速補全健 (嚴格區分大小寫)
1、cd 進入指定的目錄
cd … 回到上一級目錄
2、ls 檢視當前目錄下的所有的目錄與檔名
3、touch 檔名 表示建立一個檔案
4、mkdir 目錄名 表示建立一個目錄
5、rm 檔名 表示刪除一個檔案
rm -rf 目錄名 表示刪除改目錄及其所有的子級目錄檔案一同刪除
rm -rf */ * 代表所有, 表示刪除所有的目錄
6、rmdir 目錄名 表示刪除一個空的目錄
7、man 幫助命令,檢視命令的用法
如: man rm
8、help 幫助命令,檢視命令的用法
命令 --help

9、ctrl+c : 強制終止, 不會終止程序
9、ctrl+z : 強制終止, 終止程序
10、clear 清除命令列終端中的內容
11、ctrl+l : 快捷鍵, 快速清除終端中的內容

線上linux命令幫助手冊(中文版)
http://man.linuxde.net/

八、系統設定-介紹
1.介面介紹
2.右上角上下箭頭檢查網路是否連線上
3.輸入法,音量,時間
4.設定
1.關於電腦,電腦資訊,
2.系統設定
1.appearance
1.設定桌布,主題,圖示大小
2.Behavior
1、在系統設定中:appearce->behavior->勾選enable workspaces
2、展示工作空間:win+s
3、切換工作空間:ctrl+alt+方向鍵

    2.解析度設定 display
3.亮度和鎖屏
4.語言支援
5.線上賬戶
6.安全策略 那些軟體允許,忽略,不允許
    7.輸入選項
    ...
8**網路設定**
9,更新
10.終端介面設定

七、設定工作空間
1、在系統設定中:appearance -> behavior -> 勾選enable workspaces
2、展示工作空間:windows+s 按上下左右鍵切換不同的工作空間
3、直接切換工作空間:ctrl+alt+方向鍵

**linux下軟體的安裝
1.命令的形式安裝
ubuntu下 apt -get(老版本) install 應用名
apt install 應用名

*center os   yum  intall 應用  

2.原碼的形式安裝

八.遠端連線—

1.安裝連線工具:xShell,putty (可用可不用)
2設定允許linux遠端連線(軟體ssh,預設沒有安裝)
1.安裝ssh軟體
1.執行 sudo apt install ssh 使用管理員執行安裝
sudo !! 以管理員root身份執行上一個命令
2.啟動ssh服務
service 服務名 start
3.檢查ssh的狀態
sudo apt service sshd status

4.ssh預設埠號是22

3.可以使用遠端工具來連線 xShell
1.開啟xShell工具
2.點選新建
3.輸入連結名和ip地址(需要遠端連線的計算機)
4.設定賬號和密碼
5.確定 — 連線 --授權

*4.檢視ip地址: ifconfig

Linux終端模式

  1. CentOS 7.2安裝完預設就是黑終端模式,它是沒有圖形介面的
  2. CentOS 6.8有圖形介面的
  3. Ubuntu 預設有圖形介面,但是它有黑科技
    • control + alt + f1-f6 可以使用黑終端模式,1、最多允許一個賬號同時登陸七個終端(七個系統)
    • control + alt + f7 切換回圖形介面模式

第二部分、

一、系統目錄
1、cd / : 進入根目錄
2、每個Linux版本的根目錄可能有細微差別
3、Linux中有一個概念:將所有的東西當成檔案來處理(滑鼠,鍵盤,檔案,U盤等會被抽象出一個檔案來處理)

4、bin:可執行的二進位制檔案,通常放的是系統自帶的檔案
5、dev:Device,裝置,通常系統的硬體被抽象成一個檔案存放在dev中
6、initrd.img:開機啟動時的圖片
7、lost+found:異常關機時存放錯誤資訊的檔案
8、opt:Options,存放開發者自己開發並安裝的軟體
9、run:系統執行時需要的檔案
10、srv:存放服務啟動後需要訪問的檔案資料
11、**usr:存放與使用者直接相關的檔案目錄
12、boot:啟動配置檔案,啟動時需要的核心檔案
13、etc:配置檔案(系統中各種所需要的配置檔案)
14、lib、lib64:庫,系統內建的庫檔案,自己安裝的各種軟體的動態或靜態的連結,windows中的dll很相似。
15、media:媒體,存放是系統外接裝置,如U盤,硬碟
16、proc:系統檔案
17、sbin:系統管理員特用的二進位制檔案(root使用者)
18、sys:系統檔案
19、**var:存放日誌資訊(啟動日誌,軟體日誌)
20、cdrom:掛載入口
21、****home:家,每個使用者都會在home目錄下有一個自己的資料夾,這個資料夾的名稱與使用者名稱一致
22、mnt:掛載點,臨時安裝的掛載
23、root:超級管理員的目錄
24、snap:全新的管理軟體包的方式
25、tmp:臨時檔案
26、vmlinuz:軟連線到boot下的一個vmlinuz…檔案下

2.檔案的顏色
白色:表示一個普通的檔案
藍色:表示一個目錄
綠色:表示一個可執行檔案
紅色: 表示一個壓縮包檔案
淺藍色: 表示一個連結檔案

紅色閃爍:表示一個連結檔案,但是連線的檔案有錯誤
黃色: 通常是裝置(硬體)檔案
灰色: 其他檔案…

3、常用命令-獲取系統資訊
1、lshw: 檢視硬體資訊
2、lscpu:檢視cpu資訊
3、lsusb:檢視usb資訊
4、uname: 檢視當前系統名
uname -a : 檢視當前系統的所有資訊
檢視當前系統的資訊

5、arch:檢視系統的架構 x86 表示32位 x86_64表示64位
6、df: 檢視磁碟空間
df -h : 可以直觀的檢視磁碟的空間…

7、date:檢視當前的時間
8、cal:檢視當月日曆
9、hostname: 檢視主機名
10、ifconfig:檢視ip資訊 …
11、who: 檢視當前使用者資訊
12、free: 檢視當前記憶體的使用情況
free -h 可以直觀的檢視當前的記憶體使用情況

13、ps: 檢視當前檔案的程序
程序號

14、kill:殺死
kill 程序號 殺死一個程序
kill -9 強制殺死某個程序
15、top:根據消耗的資源,從上之下排序

4、常用命令-關機或重啟命令
1、poweroff: 立即關機
2、shutdown -h now : 立即關機
3、systemctl poweroff: 立即關機

4、shutdown -h +5: 5分鐘之後自動關機
5、shutdown -c : 取消自動關機

6、reboot: 重啟
7、shutdown -r now: 重啟
8、systemctl reboot: 重啟

5、命令前結構
1.格式: [email protected]:zzz[KaTeX parse error: Expected 'EOF', got '#' at position 2: ,#̲]: 2.xx代表… 代表當前是普通使用者
7.# 代表當前是 超級管理員 使用者 windows:admin linux:root

pwd檢視當前完整路徑

6、使用者系統
1.使用者的分類
作用:區分許可權

 1.普通使用者: 我們自定義的一個使用者,通常完成一些普通的工作
     
 2.超級管理員使用者:系統會自帶一個root使用者,root使用者什麼都能操作,(慎用)
 
 3.普通使用者當作超級管理員來使用: 
    sudo 命令 以超級管理員身份來執行命令

sudo !! 執行上一個命令
需要密碼

2.使用超級管理員帳戶 root(預設就有)
**0.安裝的系統的時候,沒有設定root密碼,
安裝完系統後的第一件事就是設定root 密碼

  1.切換到root使用者  
      su
輸入密碼

  2.設定root 密碼
      格式: sudo passwd root
需要重複2次輸入  (321)
  
  3.exit:退出root賬號

  4.切換賬號
     格式: su 使用者名稱

切換到對應使用者,
如果不寫使用者名稱,預設切換到root使用者
5.修改使用者的密碼
格式: passwd 使用者名稱
如果不寫使用者名稱,預設是當前使用者
說明: 1. root使用者可以修改任何一個使用者的密碼,且格式隨意
2.sudo 情況下也可以修改任何使用者的密碼
3.在普通使用者下只能修改當前使用者的密碼

  6.**linux下的每個使用者都必須設定密碼.只有輸入了登陸密碼後才可以進入系統

7.使用者和組
使用者: 一個使用者就是一套可以登入到系統的賬號和密碼, linux中可以同時登陸多個使用者,且每個使用者之間是隔離的
組: linux可以對使用者進行分組,而每個組會有特定的許可權

1. 使用者:  
    1.增加一個使用者
 1.圖形化介面建立 
點選右上角的 設定 --->system setting --->user account -->右上角的unlock -->認證 --->左下角 + 號--->設定使用者名稱---add即可


 2.命令列建立:
   格式:  useradd(選項)(引數)   
    選項:
    -m  自動建立使用者的登入目錄   
         引數: 使用者名稱   
   
   例: useradd -m aa  注:會自動的在 /home目錄下建立一個與使用者名稱相同名字的目錄名
         
        
    設定密碼:
    passwd  使用者名稱 

2.刪除一個使用者
userdel(選項)(引數)
選項: -f:強制刪除使用者,即使使用者當前已登入;
-r:刪除使用者的同時,刪除與使用者相關的所有檔案。 — 預設情況只刪除使用者,但不刪除使用者的檔案

     引數: 使用者名稱
     
     例:  userdel -r aa

3.修改一個使用者資訊
usermod(選項)(引數)
選項: -l 修改賬號的名稱
-L 鎖定賬號
-U 解除鎖定
引數:使用者名稱

   例1:修改使用者名稱   格式:  usermod -l 新使用者名稱 老使用者名稱    注意:不會修改對應的目錄名
         例2: 鎖定帳號  

4.查詢一個使用者資訊
查詢已經存在的使用者: 進入到 /home 目錄 就可以看到

 2.組:
   1.建立一個組
        groupadd(選項)(引數)
  選項: -g 指定新建工作組的id;          id預設會自動分配
  引數: 組名 
  例:groupadd 組名   

   2.修改一個組
       groupmod(選項)(引數)
  選項: -n 修改群組的名字
  引數: 組名 

       修改群組名稱:例:  groupmod -n  新的名字   原名字


   3.查詢組資訊 
       cd /etc/ 目錄
 檢視 group目錄  例: cat group
 group檔案中存放了該系統所有的組,
 格式:  組名:組的密碼: 組的id  

   4.刪除某個組
      groupdel (引數)
      引數:組名
例: groupdel 組名

3.將使用者新增到一個組
1.檢視使用者的組
格式: groups 使用者名稱
結果格式: 使用者名稱:主組名 附加組1 附加組2
注: 在linux中建立使用者的時候,如果沒有指定組名,linux會自動的建立一個與使用者名稱同名的組,並自動的將該使用者加入到該組
2.建立使用者的時候指定組名
格式: useradd(選項)(引數)
選項:
-m 自動建立使用者的登入目錄
-g 指定使用者所屬的群組(主)
-G -G<群組>:指定使用者所屬的附加群組;
引數: 使用者名稱
例1:
格式: useradd -g 組名 使用者名稱
在linux中,一個使用者只能新增到一個主組中, 但是可以新增到多個附加組中
新增到了多個附加組,就可以擁有多個組的許可權
作業: 附加(次要)組可以直接刪除,要刪除主要的組之前必須先刪除主組中的所有使用者

  3.修改組
       usermod(選項)(引數)  
選項: -g<群組>:修改使用者所屬的群組;
                 -G<群組>;修改使用者所屬的附加群組;
   引數:使用者名稱

8.檔案的許可權
1.在linux中通過設定檔案的許可權來設定各個使用者及組的許可權
2.檢視檔案的許可權的表現形式: ll 即可看到
drwxr-xr-x 10個字母用來表示一個檔案的許可權
d rwx r-x r-x
第1個字母:表示的是檔案的型別
d 代表當前是目錄
l 代表當前是一個連結檔案
      - 代表當前是檔案
第2-4個字母: 表示的的是當前使用者的許可權
r 表示可以讀該檔案
w 表示可課寫該檔案
x 表示可以執行該檔案
- 表示不可以對應位置的取現
第5-7 個字母: 表示當前組的許可權
第8-10 個字母: 表示其他組的許可權
3.設定檔案許可權
格式: chmod [ugoa][±=][rwx-] 檔名
例1: 將自己改成可執行
chmod u+x aa.txt
例2: 將所有使用者的許可權都改成只可讀
chmod a=r aa.txt
例3: 將自己和自己所在的組新增一個可執行許可權
chmod ug+w aa.txt
例4: 將自己修改為rwx許可權
chmod u=rwx aa.txt

ugoa
u user 代表當前使用者
g group 代表當前組
o other 代表其他組
a all 代表全部 ugo

     +  新增某個許可權
  • 去掉某個許可權
    = 重新設定許可權

r 表示可以讀該檔案
w 表示可課寫該檔案
x 表示可以執行該檔案

   4.數值修改法:
     將許可權用一個值表示:
x          1
w          2
wx         3
r          4   
rx         5
rw         6
rwx        7
    格式: chmod  值1值2值3 檔名

值1是當前使用者
值2是當前組
值3其他
例2: 將所有使用者的許可權都改成只可讀寫執行
chmod 777 aa.txt

第三部分、

1.檔案/目錄的常規操作
1.切換目錄的操作
1. cd 目錄名 切換到對應的目錄下 —相對路徑
2. cd 完整的路徑名 —絕對路徑
3. cd ~ ~ 相當於 /home/當前使用者
4. cd 表示直接切換到 /home/當前使用者
5.cd … 返回上一級目錄
注: linux是 / window:\
2. linux中 . 的作用
1. … 在路徑中表示父級目錄
2. . 在路徑中表示當前目錄下
3. . 檔名前, 表示該檔案為隱藏檔案
3.檢視/查詢目錄中的檔案
1.展示目錄下的所有的目錄及檔案
ls 展示當前目錄下的所有目錄及檔案
ls 目錄名 展示指定目錄下的所有目錄及檔案
ls -a 展示目錄下的所有的目錄及檔案,包含隱藏檔案 簡寫:la
ls -l 以列表的相識展示目錄及檔案的詳細資訊 簡寫:ll
2.tree 以樹狀結構展示目錄中的檔案及目錄
格式: tree 目錄名
第一次使用的時候需要安裝: sudo apt install tree

 3.獲取當前目錄的絕對路徑
   pwd   會展示當前目錄的絕對路徑
 
 4.find 命令  查詢一個檔案
   格式: find(選項)(引數)

例: find -name 檔名 表示在當前目錄下查詢指定檔案位置
例: find 路勁 -name 檔名 表示在指定目錄下查詢指定檔案位置
例:當前目錄及子目錄下查詢所有以.txt和.pdf結尾的檔案
find . ( -name “.txt" -o -name ".pdf” )
匹配檔案路徑或者檔案
例:
find /usr/ -path “local
基於正則表示式匹配檔案路徑
例:
find . -regex “.*(.txt|.pdf)$”

 5.whereis 查詢系統中的一些程式檔案
   whereis命令用來定位指令的二進位制程式、原始碼檔案和man手冊頁等相關檔案的路徑。
 6.檢視檔案的型別
    file 檔名/目錄名

4.目錄的操作
1.建立一個目錄
mkdir 目錄名 直接建立一個目錄
mkdir -m 700 目錄名 建立一個目錄,並設定許可權
mkdir -p 目錄名 如果建立的目錄對應的父級目錄不存在,連同父級目錄一同建立
預設情況下,如果父目錄不存在,則不能正常建立
2.刪除一個目錄
rmdir 目錄名 刪除一個空目錄
rm -rf 目錄名 刪除一個目錄及該目錄下的所有目錄及檔案
-r 遞迴遍歷
-f 強制刪除

    3.修改

1.修改目錄/檔案 名
mv file1 file2 將目錄/檔案 file1改名為file2 (移動)
mv file1 目錄名 將檔案移動到某個目錄下
5.檔案的操作
1.建立一個檔案
touch 檔名 建立一個檔案
vi
vim
2.刪除檔案
rm 檔名
-f 強制刪除
3.改…

4.複製命令
cp 原始檔位置 目標位置
例1: cp 檔案位置 目錄位置 表示將一個檔案複製到目標目錄下
例2: cp 檔案位置 目錄位置/new檔名 表示將一個檔案複製到目標目錄下並更名為new檔名
例3: cp -r 目錄名 目錄位置 表示將一個目錄複製到某個目錄下

2.連線檔案
1.檔案的儲存形式
1.window中檔案的儲存形式
1.直接儲存一個對應的檔案資料
2.以快捷方式的形式儲存,儲存的是檔案的路徑
2.linux下的儲存方式
檔名 —> 檔案節點 —>儲存檔案資料
2.連線
1.硬連線
特點:1.修改硬連線檔案或者原始檔, 硬連線檔案或者原始檔都會發生變化
2.刪除硬連線檔案或者原始檔中任意一個, 真正的資料不會刪除,沒有刪除的硬連線或者原始檔任然可以訪問檔案

     使用:ln 檔名  硬連線名

硬連線是白色的檔名
**2.軟連線 --見圖
軟連線是淺藍色的
使用: ln -s 檔名 軟連線名
特點:1.修改硬連線檔案或者原始檔, 硬連線檔案或者原始檔都會發生變化
2.刪除硬連線檔案,真正的資料會刪除,軟連線會變成紅色表示該連線有錯
3.如果刪除軟連線檔案,原始檔不受影響
推薦使用,相當於window的快捷方式

3.打包/解包 壓縮/解壓縮
1.打包
tar -cvf 打包後的檔名 目錄名 預設將打包後的檔案放在當前目錄下
-v或–verbose:顯示指令執行過程;
-f 指定備份檔案;
-c 指定備份檔案
例2:tar -cvf yy.tar yy
一般打包檔案的格式為.tar
打包檔案的顏色是紅色

2.解包
tar -xvf 已經打包的檔案 表示在當前目錄下解包
tar -xvf 已經打包的檔案 -C 指定目錄 表示在指定目錄下解包

3.壓縮
tar -zcvf 壓縮後的檔名 目錄名
-z或–gzip或–ungzip:通過gzip指令處理備份檔案;
例: tar -zcvf yy.tar.gz yy
一般打包檔案的格式為.tar
打包檔案的顏色是紅色

4.解壓縮
tar -zxvf 已經壓縮的檔案 表示在當前目錄下解壓
tar -zxvf 已經壓縮的檔案 -C 指定目錄 表示在指定目錄下解壓

注: 檔案的的副檔名(.xxx)不會影響檔案中的原資料,副檔名是方便程式去處理檔案,識別檔案型別的

4.linux中的文字編輯
1.linux 預設自帶 vi, 用升級版 vim
2.第一次使用需要安裝vim
sudo apt install vim
3.vim的三種模式:
1.普通模式 —當vim開啟的時候就直接進入普通模式,在普通模式下可以進入命令,插入模式
2.插入模式 —可以通過普通模式進入插入模式, 插入模式可以編輯文字
3.命令模式----可以通過普通模式進入命令模式,命令模式可以設定文字的儲存退出方式
4.三種模式的切換
1.普通模式—> 插入模式 i ,a , o
2.普通模式—>命令模式 :
3.插入模式—>普通模式 esc
4.命令模式 —>普通模式 刪除 :

5.使用
   1.vim 開啟檔案
      格式: vim 檔名    開啟一個可編輯檔案
                   注:如果檔名不存在,會自動建立一個空的檔案,並開啟
   2.普通模式 ---> 插入模式
       1. i  進入插入模式,按下i之後,游標不動,插入文字的時候,在原游標   前面  插入文字內容
       2. a   進入插入模式,按下a之後,游標向後移動一位,插入文字的時候,在原游標   後面  插入文字內容
       3. I    進入插入模式,按下I之後,游標會移動該行的起始位置,插入文字的時候,在行首位置開始插入內容
 4. A    進入插入模式,按下A之後,游標會移動該行的末尾位置,插入文字的時候,在行末尾置開始插入內容
       5. o     進入插入模式,按下o之後,會先在該行建立一個空的下一行,且游標在下一行的行首,直接會再下一行的行首插入內容
 6. O   進入插入模式,按下O之後,會先在該行建立一個空的上一行,且游標在上一行的行首,直接會再上一行的行首插入內容
  
    3.普通模式下的命令
  G :將游標移至最後一行行首

  nG :將游標移至第n行行首

  n+ :將游標下移n行

  n- :將游標上移n行

  n$ :游標下移至第n行行尾

  0(數字零) :將游標移到所在行的行首

  $ :將游標移到所在行的行尾

  ^ :將游標移動所在行的第一個字元(非空字元)

  h,j,k,l :分別用於游標左移,下移,上移,右移一個字元

  H :將游標移至當前螢幕首行的行首

  M :將游標移至螢幕顯示中間行的行首

  L :將游標移至當前螢幕最低行的行首
  x :刪除游標處的字元

  dw :刪除一個單詞


  **dd  :刪除游標所在行

  **yy :複製游標所在行

  **p :貼上


  **/str :向右進行搜尋


  **?str :向左進行搜尋


  n :向相同的方向查詢

  N :向不同的方向查詢

   4.命令模式的命令
       1.wq  儲存並退出
 2.q  退出
 3.q!  強制退出
   5.檢視檔案內容  檢視檔案內容時儘量不要用vim 
       1.cat 檔名   直接檢視檔案內容
   cat -n  檔名    顯示檔案內容,並顯示行號,空白行算
   cat -b  檔名   顯示檔案內容,並顯示行號,空白行不算
       2.tac 檔名  倒敘檢視檔案內容
 3.head 檔名  直接檢視檔案內容    預設檢視檔案的最上面的10行
           head  -n 檔名  顯示檔案開始的n行內容  
       4.tail 檔名  倒敘檢視檔案的內容  預設檢視檔案的最後的10行
      tail  -n 檔名  顯示檔案末尾的n行內容  
       5.more 檔名  當檔案內容過多的時候,分頁顯示內容,  按空格進行翻頁
       6.wc 檔名   統計一個檔案中各種資料的數量 
      計算檔案的Byte數、字數或是列數,
  


6.異常終止了再次開啟時會報錯
  通常會報 原始檔名.swp的檔案已經存在,原因: 當我們編輯檔案的時候,系統為了安全,會自動的生成一個檔名為 原檔名.swp的檔案,用來保證原始檔出錯時,可以及時的恢復
  如果出現了異常,再次開啟時,會直接開啟swp檔案, 可以刪除,覆蓋,修改....通常直接刪除del,

5.linux中軟體的安裝分類
1.命令列形式的安裝
apt install 應用名
2.用可執行檔案安裝 (類似windows中exe檔案)
.deb 檔案
3. 原碼安裝(已經把安裝檔案下載好了)

6.jdk 是java的開發環境 — 原碼安裝
1. 下載jdk,並copy到linux系統中
2. 解壓到安裝目錄
一般在 /usr/local/java java是自己命名的
如: sudo tar -zxvf jdk-10.0.1_linux-x64_bin.tar.gz -C /usr/local/java/
3.配置環境變數 — 在系統的任意位置可以直接使用某個程式
1.在linux配置
0.位置: 通常在 ~/.bashrc 中
1.進入到 環境變數 檔案中
vim ~/.bashrc
2.在檔案的末尾處加上環境變數 --注意,不可以修改原始檔任何內容

            格式: 
      export JAVA_HOME=/home/使用者名稱/software/jdk-10.0.1     建立一個java_home的路徑
export CLASSPATH=.    java命令查詢class檔案的路徑設定為當前目錄
export PATH=$JAVA_HOME/bin:$PATH

例:
export JAVA_HOME=/usr/local/java/jdk-10.0.1
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
    
    儲存並退出

3.重新整理環境變數 重新整理後才會生效
source ~/.bashrc

     4.測試: 在命令行當前使用者下的任意位置 執行  java -version
        如果看到版本資訊,則安裝成功

7.搜狗輸入法的安裝 ---- https://blog.csdn.net/areigninhell/article/details/79696751
見文件

第四部分、

1.虛擬環境

1.問題: 即什麼是虛擬環境
1.Linux系統預設已經安裝了兩個python版本,分別為python2.7.12與python3.5.2
如果執行命令python,進入到python2.7.12環境下
如果執行命令python3,進入到python3環境下

 2.不同的專案需要不同的python環境,如果切換專案需要來回的解除安裝安裝新的環境
   例如: 程式A需要某個庫的1.0版本,而程式B需要同樣這個庫的2.0版本,
    如果程式B執行則A就不能執行了。   
   解決: 虛擬環境為python特有的一套軟體環境, 可以建立多套不同的python,用於執行不同狀態的python專案
   優點:不同環境之間完全隔離

2.、安裝虛擬環境
1.首次使用python環境需要安裝pip
注:Linux下預設未安裝pip 需要手動安裝
安裝pip: sudo apt install python-pip : python2.7安裝
sudo apt install python3-pip : python3.5安裝

    如果pip版本過低,需要升級
 pip install --upgrade pip 
安裝成功後,最好重啟

  2、其他指令
   pip list : 檢視當前python環境下安裝的包
   pip install 軟體包名   : pip安裝python包
     
   

   3.安裝virtualenv
   pip install virtualenv
   


   4.問題1:

可能出現問題:Could not get lock /var/lib/dpkg/lock
出現這個問題可能是有另外一個程式正在執行,導致資被鎖不可用。而導致資源被鎖的原因可能是上次執行安裝或更新時沒有正常完成,進而出現此狀況,解決的辦法其實很簡單:
在終端中敲入以下兩句
sudo rm /var/cache/apt/archives/lock
sudo rm /var/lib/dpkg/lock

    問題2: Consider using the `--user` option or check the permissions
      pip install --user virtualenv 
  
  4.使用虛擬環境 https://www.cnblogs.com/cwp-bg/p/7701231.html

1、建立虛擬環境
1.建立一個目錄存放虛擬環境 mkdir,並進入該目錄
make vir
2.virtualenv 虛擬環境的名稱 (預設python2.7)
會自動在對應目錄下建立與虛擬環境同名的目錄名
3…建立指定語言版本的虛擬環境
virtualenv -p python語言版本的路徑 虛擬環境的名稱
virtualenv -p /usr/bin/python3.5 虛擬環境的名稱

  2.啟用虛擬環境
      
  1.啟用啟用虛擬環境
     source 虛擬環境目錄/bin/activate
   當虛擬環境被啟用後,在命令前可以看到(虛擬環境名稱)
  3.退出虛擬環境
   deactivate
   如果要刪除虛擬環境,只需退出虛擬環境後,刪除對應的虛擬環境目錄即可。不影響其他環境。

3.、統一管理虛擬環境 virtualenvwrapper (類似python) —https://blog.csdn.net/wieasyui/article/details/78665354
1、安裝管理軟體
sudo easy_install virtualenvwrapper
預設virtualenvwrapper安裝在/usr/local/bin下面,實際上需要執行virtualenvwrapper.sh檔案才行;所以需要先進行配置一下:

2、配置環境變數(配置軟體的執行路徑及虛擬環境的儲存位置)

提示:虛擬環境的儲存位置屬於我們自己定義的目錄,我們只需要將該目錄配置到環境中。
提示:配置軟體的執行路徑就是自動執行該virtualenvwrapper.sh

建立虛擬環境管理目錄: mkdir $HOME/.local/virtualenvs
$HOME /home/當前使用者

在~/.bashrc中新增行

 export VIRTUALENV_USE_DISTRIBUTE=1  #總是使用 pip/distribute  
 export WORKON_HOME=$HOME/.local/virtualenvs  #所有虛擬環境儲存的目錄             
       	if [ -e $HOME/.local/bin/virtualenvwrapper.sh ];then                                                                                                        
           	 source $HOME/.local/bin/virtualenvwrapper.sh                                                                                                         
        	else if [ -e /usr/local/bin/virtualenvwrapper.sh ];then                                                                                                     
           	 source /usr/local/bin/virtualenvwrapper.sh                                                                                                        
             fi                                                                                                                                                     
        fi


export PIP_VIRTUALENV_BASE=$WORKON_HOME                                                                                                                     
export PIP_RESPECT_VIRTUALENV=true

重新整理環境變數: source ~/.bashrc

啟用虛擬環境管理軟體
source /usr/local/bin/virtualenvwrapper.sh
3、使用虛擬環境
1.建立並激活虛擬環境 : mkvirtualenv 虛擬環境名稱 (預設建立python2.7)
2.建立指定語言版本的虛擬環境
mkvirtualenv -p python語言版本的路徑 虛擬環境的名稱
mkvirtualenv -p /usr/bin/python3.5 虛擬環境的名稱
3、退出虛擬環境 : deactivate
4.、繼續使用之前的虛擬環境: workon 虛擬環境名稱 (該虛擬環境必須存在)

注:使用任何一種虛擬環境,之前的所有指令都不會有影響,只有python指令會根據不同的環境呼叫不同的版本。

e、刪除虛擬環境:rmvirtualenv 虛擬環境名稱
f.列出所有環境:workon 或者 lsvirtualenv -b

二、安裝Python3.6.5—https://www.cnblogs.com/yqpy/p/9116590.html
1、準備內容:需要有一個Python3.6.5 Linux下的原始碼安裝包
2、解壓縮安裝包
解壓到某一個常用的軟體目錄中
tar -zxvf Python-3.6.5.tgz -C ~/software
3、原始碼安裝時,安裝包中都會有說明文件 README.
如果沒有說明文件,去官網查詢說明文件
4、安裝文件安裝
進入到解壓完的python-3.6.5中執行一下命令 // 建議先進行5、6兩步

   sudo ./configure        配置
   sudo ./configure --enable-optimizations
   
   sudo make      構建
   sudo make install    安裝

5、如果執行完make install報錯,報出一個zip…的錯誤,執行以下命令

    sudo apt install zlib*
    sudo make install

6、如果出現gcc檔案錯誤,安裝gcc,執行以下命令

sudo apt install gcc
sudo apt install gcc-c++

原始碼安裝:
可能會出現bug:
電腦環境不一樣(電腦環境中缺少必要的安裝包)
安裝時缺少庫檔案(安裝提示缺少什麼檔案,安裝什麼檔案)
優點:可配置性高
make構建:耗時長,可能會缺少gcc,安裝gcc編譯器

注:當python3.6.5安裝成功後,python3這條指令指向了python3.6.5,如果想要進入python3.5.2的版本下,需要執行python3.5

三、虛擬環境
如果想要建立3.6.5的環境
mkvirtualenv 環境名稱 -p /usr/local/bin/python3.6
如果想要建立3.5.2的環境
mkvirtualenv 環境名稱 -p /usr/bin/python3.5

使用方式與之前的命令一致(L03.txt中的使用命令)

四、安裝PyCharm 18.1.3版
1、準備內容:需要有一個PyCharm在Linux下的安裝包
2、解壓縮安裝包
解壓到某一個常用的軟體目錄中

tar -zxvf Pycharm..gz -C ~/software

3、可以在解壓完成的目錄中測試pycharm是否可用

   cd ~/software/pycharm-2018.1.3
   cd bin
   ./pycharm.sh  (軟體的執行檔案為...sh)

4、配置pycharm的環境變數 .bashrc
在 ~/.bashrc 後面加入以下兩條目錄路徑

   export PyCharm=/home/使用者名稱/software/pycharm-2018.1.3
   export PATH=$PyCharm/bin:$PATH

5、重新整理配置檔案

source ~/.bashrc

6、當重新整理成功後,可以在當前使用者下的任意位置啟動pycharm
啟動指令: pycharm.sh

啟用:https://blog.csdn.net/xiaoming0018/article/details/80346895

***linux中使用命令安裝:
1.安裝 apt install 程式名
2.解除安裝 apt remove 程式名
3.升級 apt update 程式名
4.查詢 apt search “字串” 表示查詢含有對應字元的程式

| grep 字串 過濾出結果中含有某個字串的資料

五、安裝MySQL

命令: sudo apt install mysql-server-5.7

注:安裝過程中,會提示輸入root使用者的密碼,輸入結束後回車;會再次提示一個確認密碼,輸入後回車,等待安裝。
注:密碼不要忘記。

安裝結束後進入mysql的指令:

mysql -u root -p

會提示輸入密碼(輸入root使用者的密碼,成功後進入mysql)
當出現 mysql> 代表成功進入mysql伺服器

在mysql下所有的語句與在windows下寫過的語句完全一致。

六、安裝MongoDB
1、準備內容:需要有一個MongoDB在Linux下的安裝包
2、解壓縮安裝包
解壓到桌面即可

tar -zxvf mongo....gz

3、將解壓完成的的檔案中的內容移動到 /usr/local/mongodb 目錄下

sudo mv mongodb...af/  /usr/local/mongodb
/usr/local/mongodb  : mongodb的安裝路徑

4、在mongodb目錄下建立data目錄用來存放資料,在data目錄下建立db及log目錄
目前db的路徑為 /usr/local/mongodb/data/db

5、啟動mongodb的伺服器端
進入到mongodb的bin目錄下,執行以下命令

   ./mongod -dbpath=data/db的路徑
   ./mongod -dbpath=/usr/local/mongodb/data/db

例: ./mongod -dbpath=/usr/local/mongodb/mongodb-3.6.5/data/db
見到port為27017時代表啟動成功

6、啟動mongodb的客戶端 (之前的伺服器端不能關閉,重新開啟一個終端)
進入到mongodb的bin目錄下,執行以下命令
./mongo 啟動客戶端

在mongodb下所有的語句與在windows下寫過的語句完全一致。

七、安裝redis
1、準備內容:需要有一個redis在Linux下的安裝包
2、解壓縮安裝包
解壓到某一個常用的軟體目錄中

tar -zxvf redis..gz -C ~/software

3、進入到解壓完成的路徑下執行make

  cd ~/software/redis-4.0.9
   sudo  make   構建

4、make構建指令結束後,執行以下命令

 make test

5、make test 執行結束後安裝redis,執行以下命令

sudo make install

6、啟動redis伺服器端
進入src路徑下

   cd ~/software/redis-4.0.9/src
   ./redis-server 

7、啟動redis客戶端
進入src路徑下

   cd ~/software/redis-4.0.9/src
   ./redis-cli 

(注:redis的安裝路徑為:~/software/redis-4.0.9)

在redis下所有的語句與在windows下寫過的語句完全一致。

8.wget 命令,網路下載命令
格式: wget url地址 將url對應的檔案下載下來
wget -O 指定檔名 url地址

第五部分、

1.ftp
用於檔案上傳下載的伺服器
1、vsftpd 是一個開源免費的ftp伺服器軟體,在Linux中最受推崇的FTP伺服器,特點小巧輕快,安全易用
2、xftp 是一個開源免費的ftp客戶端軟體
3、安裝伺服器

 sudo apt install vsftpd

4、啟動伺服器

 systemctl start vsftpd 
 service vsftpd start

5、停止伺服器

 systemctl stop vsftpd
 service vsftpd   stop

6、重啟伺服器

 systemctl restart vsftpd 
 service vsftpd restart

7、預設的ftp伺服器端只支援下載,不支援上傳,如果想要支援上傳,需要設定配置檔案 /etc/vsftpd.conf
更改配置檔案

 sudo vim  /etc/vsftpd.conf 
 write_enable=YES
 儲存並退出
 注:配置檔案中的語法格式 : 屬性=值    等號兩邊一定不能出現空格

8、更改配置檔案後,重啟ftp伺服器

 systemctl restart vsftpd
 service  vsftpd restart

2,版本控制器介紹:
1.版本控制器,用處及好處
1.便於開發,管理原始碼
2.管理版本
3.管理進度
2.使用場景
1.程式碼正常工作–改了幾行程式碼–更新程式碼
2.程式出問題了–把程式碼改回來–還原始碼
3.客戶1 – 第一天需要進度條 第二天對話方塊顯示進度 第三天還是進度條好看 — 選擇某個版本的程式碼
4.有人在程式碼中做了手腳 --找出這個人
5.程式碼擁有許可權 —偷程式碼
6.多個人同事同時更改同一個類,版本控制器可以幫忙合併程式碼
7.工作量統計—程式碼多,給的獎金多
8.版本記錄
3.常見軟體
1.svn (市場份額) 2.git 3.cvs 4.vss (微軟公司) 5.ClearCase
4.基本原理
1.客戶端程式碼或檔案提交到 伺服器(倉庫)
2.客戶端從伺服器下載程式碼或檔案

5.提交程式碼的原則
1. 先更新,再提交

**2.多提交 

3.不要提交不能通過編譯的程式碼 

4.每次提交必須書寫明晰的標註 

5.提交時注意不要提交本地自動生成的檔案 

6.不要提交自己不明白的程式碼 

3.、git:專案管理工具,可以允許單人或多人合作開發。
github 配置 —https://www.cnblogs.com/chengxs/p/6297659.html
1.安裝git

   sudo apt install git

2、配置git賬號

  git config --global user.name "git的使用者名稱"
  git config --global user.email "git的郵箱"

3、根據使用者名稱及郵箱生成金鑰(該金鑰會用在該賬號中)

   1.	 ssh-keygen -t rsa -C "git的郵箱"
   2. 執行後所有位置回車即可

   3.生成的金鑰預設存放在/home/使用者名稱/.ssh 目錄下

金鑰的檔案為 id_rsa.pub

cat id_rsa.pub 可以檢視金鑰內容

金鑰範圍為ssh至郵箱之前(不包含郵箱)
複製該金鑰。
4、網頁端登陸github使用者設定金鑰
將金鑰複製到該使用者的ssh金鑰下
使用者 -> settings -> SSH&GPG keys -> new ssh key

5、檢測金鑰是否可用

ssh -T [email protected]

見到successfully …代表成功

‘
git init 
git add README.md 
git commit -m“first commit” 
git remote add origin https://github.com/wujialaoer/test_02.git
git push -u origin master
’

3.github上傳及更新專案
1、需要在網頁端建立一個新的倉庫(專案) new respository
2、當我們需要給新的專案respository上傳內容時,需要使用init命令將我們需要上傳的目錄初始化

  git init
 #將一個普通檔案初始化為可以連結git的檔案

3、連結遠端倉庫

git remote add origin git專案地址

4、將需要上傳到遠端倉庫的檔案寫在add後面
(該命令執行的路徑為init過的檔案路徑下)

 git add abc.txt

讓系統自動判斷新增的檔案:

 git add .

5、將add後的檔案提交到本地倉庫

 git commit -m "提交的資訊"

6、將提交的內容同步至github上

 git push -u origin master 

(如果正常可以提交檔案,不要使用強制提及;如果正常提交失敗,可以嘗試強制提交)

強制提交:git push -u origin +master

7.問題: 拒絕上傳
解決:修改配置檔案
1.進入當前共享檔案的 .git 目錄 cd .git
2.編輯 config vim config
3.將url地址改成github中專案的 ssh地址
4.儲存並退出
5.再次提交, 不需要輸入賬號密碼

4.、更新已經在github上存在的專案(自己電腦上沒有該專案)

1、將github上的專案clone到本地某一路徑下

 git clone git專案地址

2、將需要上傳到遠端倉庫的檔案寫在add後面
(該命令執行的路徑為init過的檔案路徑下)
git add abc.txt
讓系統自動判斷新增的檔案:

 git add .

3、將add後的檔案提交到本地倉庫

 git commit -m "提交的資訊"

4、將提交的內容同步至github上
git push -u origin master
(如果正常可以提交檔案,不要使用強制提及;如果正常提交失敗,可以嘗試強制提交)

強制提交: git push -u origin +master

5.、修改github的專案(前提:本地已經存在該專案,只是更新部分內容)
1、將需要上傳到遠端倉庫的檔案寫在add後面
(該命令執行的路徑為init過的檔案路徑下)

 git add abc.txt

讓系統自動判斷新增的檔案:

 git add .

2、將add後的檔案提交到本地倉庫

 git commit -m "提交的資訊"

3、將提交的內容同步至github上

 git push -u origin master 

(如果正常可以提交檔案,不要使用強制提及;如果正常提交失敗,可以嘗試強制提交)

強制提交: git push -u origin +master

6.、當多人合作開發時
1、更新本地倉庫

   git fetch origin

2、其他指令(提交等指令)與之前一致

7、nginx安裝

方法1:https://blog.csdn.net/b_evan/article/details/72858149

方法2:
1.去nginx管網
2.選擇download
3.文件中找官網安裝方式
4.下載認證金鑰

wget http://nginx.org/keys/nginx_signing.key

會下載到當前目錄下的nginx_signing.key檔案中
5.安裝

sudo apt-key add nginx_signing.key

6.配置源
切換到對應的檔案,並編輯

 vim  /etc/apt/sources.list

加上源:

deb http://nginx.org/packages/ubuntu/ codename nginx
deb-src http://nginx.org/packages/ubuntu/ codename nginx 
注意將codename替換成當前codename  16.04 對應為: xenial

儲存退出
7.更新跟安裝

  apt-get update
  apt-get install nginx

8.檢視nginx服務是否開啟

ps -ef | grep nginx

9.啟動 sudo nginx
10.直接輸入IP地址可以訪問 即可…

如有錯誤請及時評論,方便改正,謝謝。