第二天:Linux上的編輯器和服務器
一、gedit編輯器
gedit是一個Linux環境下的文本編輯器,類似windows下的寫字板程序,在不需要特別復雜的編程環境下,作為基本的文本編輯器比較合適
二、Sublime編輯器
Sublime Test是一個代碼編輯器(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
1、vi簡介
vi是“Visual interface”的簡稱,它在Linux上的地位就仿佛Edit程序在DOS上一樣。它可以執行輸出、刪除、查找、替換、塊操作等眾多文本操作,而且用戶可以根據自己的需要對其進行定制。vi不是一個排版程序,它不像Word或PS那樣可以對字體、格式、段落等其他屬性進行編排,它只是一個文本編輯程序。vi沒有菜單,只有命令,且命令繁多
vi有三種工作模式:
+ 命令模式
+ 文本輸入模式
+ 末行模式
命令行模式
任何時候,不管用戶處於何種模式,只要按一下ESC鍵,即可使vi進入命令模式;我們在shell環境(提示符為$)下輸入啟動vi命令,進入編輯器時,也是處於該模式下。在該模式下,用戶可以輸入各種合法的vi命令,用於管理自己的文檔。此時從鍵盤上輸入的任何字符都被當做編輯器命令來解釋,若輸入的字符是合法的vi命令,則vi在接受用戶命令之後完成相應的動作。但需註意的是,所輸入的命令並不在屏幕上顯示出來。若輸入的字符不是vi的合法命令,vi會響鈴報警
文本輸入模式
在命令模式下輸入插入命令i、附加命令a、打開命令o、修改命令c、取代命令r或替換命令s都可以進入文本輸入模式。在該模式下,用戶輸入的任何字符都被vi當做文件內容保存起來,並將其顯示在屏幕上。在文本輸入過程中,若想回到命令模式下,按鍵ESC即可。
末行模式
末行模式也稱ex轉義模式。在命令模式下,用戶按“:”鍵即可進入末行模式下,此時vvi會在顯示窗口的最後一行(通常也是屏幕的最後一行)顯示一個“:”作為末行模式的提示符,等待用戶輸入命令。多數文件管理命令都是在此模式下執行的(如把編輯器緩沖區的內容寫到文件中等)。末行命令執行完後,vi自動回到命令模式。例如:
:sp newfile
則分出一個窗口編輯newfile文件。如果要從命令模式轉換到編輯模式,可以鍵入命令a或者i;如果需要從文本模式返回,則按ESC鍵即可。在命令模式下輸入“:”即可切換到末行模式,然後輸入命令。
2、vim基本操作
vim是從vi發展出來的一個文本編輯器。代碼補完、編譯及錯誤跳轉等方便編程的功能特別豐富
進入插入模式:
i: 插入光標前一個字符 I: 插入行首 a: 插入光標後一個字符 A: 插入行未 o: 向下新開一行,插入行首 O: 向上新開一行,插入行首
進入命令模式:
ESC:從插入模式或末行模式進入命令模式
移動光標:
h: 左移 j: 下移 k: 上移 l: 右移 M: 光標移動到中間行 L: 光標移動到屏幕最後一行行首 G: 移動到指定行,行號 -G w: 向後一次移動一個字 b: 向前一次移動一個字 {: 按段移動,上移 }: 按段移動,下移 Ctr-d: 向下翻半屏 Ctr-u: 向上翻半屏 Ctr-f: 向下翻一屏 Ctr-b: 向上翻一屏 gg: 光標移動文件開頭 G: 光標移動到文件末尾
刪除命令:
x: 刪除光標後一個字符,相當於 Del X: 刪除光標前一個字符,相當於 Backspace dd: 刪除光標所在行,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
使用說明
圖形界面配置(新手推薦)
依次打開:系統設置,軟件和更新。在 下載自
中選擇 其他站點
,然後在中國的條目 下選擇 mirrors.ustc.educ.cn
。
下面是 Ubuntu 16.04 的操作示意圖:
手動更改配置文件
警告
操作前請做好相應備份
一般情況下,將 /etc/apt/sources.list
文件中 Ubuntu 默認的源地址 http://archive.ubuntu.com/
替換為 http://mirrors.ustc.edu.cn
即可。
可以使用如下命令:
sudo sed -i ‘s/archive.ubuntu.com/mirrors.ustc.edu.cn/g‘ /etc/apt/sources.list .. tip:: 如果你在安裝時選擇的語言不是英語,默認的源地址通常不是 ``http://archive.ubuntu.com/`` ,而是 ``http://<country-code>.archive.ubuntu.com/ubuntu/`` 例如: ``http://cn.archive.ubuntu.com/ubuntu/`` ,此時秩序將上面的命令進行相應的替換即可,如: `` sudo sed -i ‘s/cn.archive.ubuntu.com/mirrors.ustc.edu.cn/g‘ /etc/apt/sources.list`` 。
當然也可以直接編輯 /etc/apt/sources.list
文件(需要使用 sudo)。以下是 Ubuntu 16.04 參考配置內容:
# 默認註釋了源碼倉庫,如有需要可自行取消註釋deb https://mirrors.ustc.edu.cn/ubuntu/ xenial main restricted universe multiverse# deb-src https://mirrors.ustc.edu.cn/ubuntu/ xenial main restricted universe multiversedeb https://mirrors.ustc.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse# deb-src https://mirrors.ustc.edu.cn/ubuntu/ xenial-updates main restricted universe multiversedeb https://mirrors.ustc.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse# deb-src https://mirrors.ustc.edu.cn/ubuntu/ xenial-backports main restricted universe multiversedeb https://mirrors.ustc.edu.cn/ubuntu/ xenial-security main restricted universe multiverse# deb-src https://mirrors.ustc.edu.cn/ubuntu/ xenial-security main restricted universe multiverse# 預發布軟件源,不建議啟用# deb https://mirrors.ustc.edu.cn/ubuntu/ xenial-proposed main restricted universe multiverse# deb-src https://mirrors.ustc.edu.cn/ubuntu/ xenial-proposed main restricted universe multiverse
更改完 sources.list
文件後請運行 sudo apt-get update
更新索引以生效。
小技巧
使用 HTTPS 可以有效避免國內運營商的緩存劫持。
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上的編輯器和服務器