day02.Linux、編輯器、伺服器Python教程
day02.Linux、編輯器、伺服器
一、gedit編輯器
gedit是一個Linux環境下的文本編輯器,類似windows下的寫字板程序,在不需要特別複雜的編程環境下,作為基本的文本編輯器比較合適。
二、sublime編輯器
Sublime Text 是一個代碼編輯器(Sublime Text 2是收費軟體,但可以無限期試用)
Sublime Text是由程序員Jon Skinner於2008年1月份所開發出來,它最初被設計為一個具有豐富擴展功能的Vim。
Sublime Text具有漂亮的用戶界面和強大的功能,例如代碼縮略圖,Python的插件,代碼段等。
還可自定義鍵綁定,菜單和工具欄。Sublime Text 的主要功能包括:拼寫檢查,書籤,完整的 Python API , Goto 功能,即時項目切換,多選擇,多窗口等等。
Sublime Text 是一個跨平台的編輯器,同時支持Windows、Linux、Mac OS X等操作系統。
三、編輯器之神-vim
vi簡介
vi是「Visual interface」的簡稱,它在Linux上的地位就彷彿Edit程序在DOS上一樣。它可以執行輸出、刪除、查找、替換、塊操作等眾多文本操作,而且用戶可以根據自己的需要對其進行定製。Vi不是一個排版程序,它不象Word或WPS那樣可以對字體、格式、段落等其他屬性進行編排,它只是一個文本編輯程序。 vi沒有菜單,只有命令,且命令繁多。
Vi有三種基本工作模式:+ 命令模式+ 文本輸入模式+ 末行模式。
命令行模式
任何時候,不管用戶處於何種模式,只要按一下ESC鍵,即可使Vi進入命令模式;我們在shell環境(提示符為$)下輸入啟動Vi命令,進入編輯器時,也是處於該模式下。在該模式下,用戶可以輸入各種合法的Vi命令,用於管理自己的文檔。此時從鍵盤上輸入的任何字元都被當做編輯命令來解釋,若輸入的字元是合法的Vi命令,則Vi在接受用戶命令之後完成相應的動作。但需注意的是,所輸入的命令並不在屏幕上顯示出來。若輸入的字元不是Vi的合法命令,Vi會響鈴報警。
文本輸入模式
在命令模式下輸入插入命令i、附加命令a 、打開命令o、修改命令c、取代命令r或替換命令s都可以進入文本輸入模式。在該模式下,用戶輸入的任何字元都被Vi當做文件內容保存起來,並將其顯示在屏幕上。在文本輸入過程中,若想回到命令模式下,按鍵ESC即可。
末行模式
末行模式也稱ex轉義模式。在命令模式下,用戶按「:」鍵即可進入末行模式下,此時Vi會在顯示窗口的最後一行(通常也是屏幕的最後一行)顯示一個「:」作為末行模式的提示符,等待用戶輸入命令。多數文件管理命令都是在此模式下執行的(如把編輯緩衝區的內容寫到文件中等)。末行命令執行完後,Vi自動回到命令模式。例如:
:sp newfile
則分出一個窗口編輯newfile文件。如果要從命令模式轉換到編輯模式,可以鍵入命令a或者i;如果需要從文本模式返回,則按Esc鍵即可。在命令模式下輸入「:」即可切換到末行模式,然後輸入命令。
vim基礎操作
vim是從 vi 發展出來的一個文本編輯器 。代碼補完、編譯及錯誤跳轉等方便編程的功能特別豐富
進入插入模式:
i: 插入游標前一個字元 I: 插入行首 a: 插入游標後一個字元 A: 插入行未 o: 向下新開一行,插入行首 O: 向上新開一行,插入行首
進入命令模式:
ESC:從插入模式或末行模式進入命令模式
移動游標:
h: 左移 j: 下移 k: 上移 l: 右移M: 游標移動到中間行 L: 游標移動到屏幕最後一行行首 G: 移動到指定行,行號 -Gw: 向後一次移動一個字 b: 向前一次移動一個字{: 按段移動,上移 }: 按段移動,下移Ctr-d: 向下翻半屏 Ctr-u: 向上翻半屏Ctr-f: 向下翻一屏 Ctr-b: 向上翻一屏gg: 游標移動文件開頭 G: 游標移動到文件末尾
刪除命令:
x: 刪除游標後一個字元,相當於 Del X: 刪除游標前一個字元,相當於 Backspacedd: 刪除游標所在行,n dd 刪除指定的行數 D: 刪除游標後本行所有內容,包含游標所在字元 d0: 刪除游標前本行所有內容,不包含游標所在字元dw: 刪除游標開始位置的字,包含游標所在字元
撤銷命令:
u: 一步一步撤銷 Ctr-r: 反撤銷
重複命令:
.: 重複上一次操作的命令
文本行移動:
>>: 文本行右移
複製粘貼:
yy: 複製當前行,n yy 複製 n 行 p: 在游標所在位置向下新開闢一行,粘貼
可視模式:
v: 按字元移動,選中文本 V: 按行移動,選中文本可視模式可以配合 d, y, >>,
替換操作:
r: 替換當前字元 R: 替換當前行游標後的字元
查找命令:
/: str查找n: 下一個N:上一個
替換命令:
把abc全部替換成123
末行模式下,將游標所在行的abc替換成123:%s/abc/123/g末行模式下,將第一行至第10行之間的abc替換成123:1, 10s/abc/123/g
vim里執行 shell 下命令:
末行模式里輸入!,後面跟命令
四、ubuntu軟體安裝與卸載更新Ubuntu軟體下載地址1. 尋找國內鏡像源
所謂的鏡像源:可以理解為提供下載軟體的地方,比如Android手機上可以下載軟體的91手機助手;iOS手機上可以下載軟體的AppStore
2. 備份Ubuntu默認的源地址
sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup
3. 更新源伺服器列表
4. 更新源
做完此步驟之後,就可以進行apt-get install 下載了
Ubuntu軟體操作的相關命令
sudo apt-get update 更新源sudo apt-get install package 安裝包sudo apt-get remove package 刪除包sudo apt-cache search package 搜索軟體包sudo apt-cache show package 獲取包的相關信息,如說明、大小、版本等sudo apt-get install package --reinstall 重新安裝包sudo apt-get -f install 修復安裝sudo apt-get remove package --purge 刪除包,包括配置文件等sudo apt-get build-dep package 安裝相關的編譯環境sudo apt-get upgrade 更新已安裝的包sudo apt-get dist-upgrade 升級系統sudo apt-cache depends package 了解使用該包依賴那些包sudo apt-cache rdepends package 查看該包被哪些包依賴sudo apt-get source package 下載該包的源代碼sudo apt-get clean && sudo apt-get autoclean 清理無用的包sudo apt-get check 檢查是否有損壞的依賴
五、Linux常用伺服器構建-ftp伺服器ftp伺服器
FTP 是File Transfer Protocol(文件傳輸協議)的英文簡稱,而中文簡稱為「文傳協議」。
用於Internet上的控制文件的雙向傳輸。
同時,它也是一個應用程序(Application)。基於不同的操作系統有不同的FTP應用程序,而所有這些應用程序都遵守同一種協議以傳輸文件。
在FTP的使用當中,用戶經常遇到兩個概念:"下載"(Download)和"上傳"(Upload)。
"下載"文件就是從遠程主機拷貝文件至自己的計算機上;
"上傳"文件就是將文件從自己的計算機中拷貝至遠程主機上。用Internet語言來說,用戶可通過客戶機程序向(從)遠程主機上傳(下載)文件。
1.安裝vsftpd伺服器
sudo apt-get install vsftpd
2.配置vsftpd.conf文件
sudo vi /etc/vsftpd.conf
3.測試上傳功能,登陸ftp伺服器
ftp IP
4.上傳命令,可以把文件上傳到ftp伺服器
put somefile
5.下載命令,可以把ftp伺服器上的文件下載到本地
get somefile圖形界面的ftp客戶端(filezilla)
六、Linux常用伺服器構建-ssh和scp1.sshssh介紹
SSH為Secure Shell的縮寫,由 IETF 的網路工作小組(Network Working Group)所制定;SSH 為建立在應用層和傳輸層基礎上的安全協議。
SSH是目前較可靠,專為遠程登錄會話和其他網路服務提供安全性的協議。常用於遠程登錄,以及用戶之間進行資料拷貝。
利用SSH協議可以有效防止遠程管理過程中的信息泄露問題。SSH最初是 UNIX 系統上的一個程序,後來又迅速擴展到其他操作平台。SSH 在正確使用時可彌補網路中的漏洞。SSH 客戶端適用於多種平台。幾乎所有 UNIX 平台—包括 HP-UX、Linux、AIX、Solaris、Digital UNIX、Irix,以及其他平台,都可運行SSH。
使用SSH服務,需要安裝相應的伺服器和客戶端。客戶端和伺服器的關係:如果,A機器想被B機器遠程控制,那麼,A機器需要安裝SSH伺服器,B機器需要安裝SSH客戶端。
安裝ssh
A.安裝ssh伺服器
sudo apt-get install openssh-server
B.遠程登陸
ssh 用戶名@IP
使用ssh訪問,如訪問出現錯誤。可查看是否有該文件 ~/.ssh/known_ssh 嘗試刪除該文件解決。
使用ssh連接伺服器
SSH 告知用戶,這個主機不能識別,這時鍵入"yes",SSH 就會將相關信息,寫入" ~/.ssh/know_hosts" 中,再次訪問,就不會有這些信息了。然後輸入完口令,就可以登錄到主機了。
2.scp
遠程拷貝文件,scp -r 的常用方法:
1.使用該命令的前提條件要求目標主機已經成功安裝openssh-server
如沒有安裝使用 sudo apt-get install openssh-server 來安裝
2.使用格式:
scp -r 目標用戶名@目標主機IP地址:/目標文件的絕對路徑 /保存到本機的絕對/相對路徑舉例:scp -r itcast@192.168.1.100:/home/itcast/QQ_dir/ ./mytest/lisi在後續會提示輸入「yes」此時,只能輸「yes」而不能簡單輸入「Y」
拷貝單個文件可以不加 -r參數,拷貝目錄必須要加。
本地文件複製到遠程:
scp FileName RemoteUserName@RemoteHostIp:RemoteFilescp FileName RemoteHostIp:RemoteFolderscp FileName RemoteHostIp:RemoteFile
本地目錄複製到遠程:
scp -r FolderName RemoteUserName@RemoteHostIp:RemoteFolderscp -r FolderName RemoteHostIp:RemoteFolder
遠程文件複製到本地:
scp RemoteUserName@RemoteHostIp:RemoteFile FileNamescp RemoteHostIp:RemoteFolder FileNamescp RemoteHostIp:RemoteFile FileName
遠程目錄複製到本地:
scp -r RemoteUserName@RemoteHostIp:RemoteFolder FolderNamescp -r RemoteHostIp:RemoteFolder FolderName
七、Linux常用伺服器構建-samba1. 介紹
Samba是在Linux和UNIX系統上實現SMB協議的一個免費軟體,能夠完成在windows、mac操作系統下訪問linux系統下的共享文件
2. 安裝
使用apt命令安裝samba
3. 配置3.1 創建存放共享文件的路徑
在home路徑下操作:
修改其許可權:
修改samba的配置文件:
3.2 創建samba賬戶
4 重啟samba
當對配置進行了更新,需要重啟samba軟體後才可生效
重啟命令如下:
5. 訪問共享文件5.1 mac下訪問方式
5.2 windows下訪問方式
八、附錄-vim分屏操作vim分屏操作
分屏操作:
sp: 上下分屏,後可跟文件名 vsp: 左右分屏,後可跟文件名Ctr+w+w: 在多個窗口切換
啟動分屏:
1.使用大寫O參數進行垂直分屏
$ vim -On file1 file2 ...
2.使用小寫o參數進行水平分屏
$ vim -on file1 file2 ...
注: n是數字,表示分屏的數量,n要大於等於文件個數
關閉分屏
1.關閉當前窗口
ctrl+w c
2.關閉當前窗口,如果只剩最後一個,則退出vim
ctrl+w q
編輯中分屏
1.上下分割當前打開的文件
ctrl+w s
2.上下分割,並打開一個新的文件
:sp filename
3.左右分割當前打開的文件
ctrl+w v
4.左右分割,並打開一個新的文件
:vsp filename
分屏編輯中游標的移動
vi中的游標鍵是h,j,k,l,要在各個屏之間切換,只需要先按一下ctrl+w
1.把游標移動到上邊的屏
ctrl+w k
2.把游標移動到下邊的屏
ctrl+w j
3.把游標移動到右邊的屏
ctrl+w l
4.把游標移動到左邊的屏
ctrl+w h
5.把游標移動到下一個的屏
ctrl+w w
移動分屏
1.向上移動
ctrl+w K
2.向下移動
ctrl+w J
3.向右移動
ctrl+w L
4.向左移動
ctrl+w H
屏幕尺寸
1.增加高度
ctrl+w +
2.減少高度
ctrl+w -
3.讓所有屏的高度一致
ctrl+w =
4.左加寬度
ctrl+w >
5.右加寬度
ctrl+w
6.右增加n寬 (如:n=30)
ctrl+w n
C+p: 生成tagsC+]: 跳轉到函數定義C+t:從函數定義返回C+o:在左側打開文件列表F4: 在右側打開函數列表C+n:補齊函數,向下翻
vimrc是vim的配置文件,可以修改兩個位置
1. /etc/vim/vimrc2.~/.vimrc~/.vimrc優先順序高


※小白教程-快速安裝Python 3.X
※啟動Python的方法有哪些?
TAG:Python |