1. 程式人生 > >Linux 常用命令基礎入門二

Linux 常用命令基礎入門二



PROCESS  程序
一個程式  開啟一個程序
ps aux|less報告系統當前的程序狀態


USER     程序啟動者 (哪個使用者在使用這個程序)
PID        程序號
%CPU    百分比CPU的使用率
%MEM   以百分比標識的記憶體使用率
VSZ        虛擬記憶體大小
RSS        程序佔用的實體記憶體的大小,以前位元組為單位
START    程序執行的其實時間,若超過24小時,則用天表示


/vim   進行相應內容查詢


ps aux|grep vim   也可以直接得到程序名對應程序


kill PID號     就可以殺死相對應的程序


命令列啟動圖形化介面   
啟動其他程式   firefox 


若要後臺執行則   firefox &
則就在後臺啟動,命令列也還是可以用的


Ctrl +D  停止執行, 則程式沒有響應


恢復則就敲  bg
fg 回到前臺   Ctrl +C  結束


kill -9  PID號   強制殺死,
但程式佔用大量記憶體,使桌面系統被拖死
無法輸入


Ctrl Alt  F1   則可以到達第一個工作臺
殺死相應的程序   再Ctrl  Alt  F7 回到原來工作臺


shell   退出命令exit






Search  查詢


locate 系統權利範圍內
find    目錄範圍內
grep   字串範圍內




locate vimrc  就可以列印系統路徑上所有包含vimrc的檔案了
locate 是從一個數據庫中去查詢,所以很快 ,而不是直接FIle System 


更新資料庫
sudo updatedb


find  .    當前目錄的所有內容
find  .|grep .txt    字尾為txt 檔案
find  . -type f       檢視檔案
find  . -type d      檢視目錄




find . -type f  -exec          ls -l       '{}'        ';'
                                     對找到的檔案的操作   結束符
//查詢相應的字串
find . -type f -exec grep hello '{}'  ';'  


//查詢相應的字串,並列印檔名
find . -type f -exec grep hello '{}'  ';'  -print       


//查詢相應的字串,並列印檔名。和匹配項所在的行號
find . -type f -exec grep -n hello '{}'  ';'  -print             


//忽略小寫
find . -type f -exec grep -ni hello '{}'  ';'  -print       






網路操作
ssh  遠端
rsync資料傳輸


本機(客戶端)  openssh-client    (ubuntu-destop)
伺服器端            openssh-server  (ubuntu-server)


如伺服器的域名為
happycasts.net   106.186.22.51
ssh  peter(伺服器的使用者名稱)@happycasts.net   就可以連結伺服器了


每次登陸都要輸入一遍密碼,太麻煩,可以
在本地機器上
ssh-keygen
cd ~/.ssh
ls
id_rsa            id_rsa.pub
私鑰private    公鑰public 


我們要做的就是把公鑰存到 伺服器的 /home/peter/.ssh.authorized_keys
可以手動拷貝貼上,也可以用系統命令進行
ssh-copy-id
[email protected]

則以後登陸就可以不用輸入密碼了


是用vim 編輯器進行遠端操作可能會遇到突然間網路斷開,
或者自己進行CTRL +D 退出連結,導致失去當前的頁面操作
可以使用tmux
tmux 終端視窗管理器
tmux a 可以重新回到原來的操作現場
推薦視訊  HappyCasts  41 期




rsync -r mydir(檔案目錄) happycasts.net(伺服器名):(冒號後面可以進一步新增路徑)
不指定目錄會自動預設主目錄


rsync -r happycasts.net:mydir .
將伺服器上的資料載入到本地


檔案有刪除增加 通過rsync 同步


rsync -av --delete mydir/happycasts.net:mydir/   否則無法刪除




軟體安裝
Sublime  程式碼編輯器
下載後,解壓縮
mv Sublime\ Text\ 2 .sublime  移動到其他目錄
echo  $PATH 環境命令


變成系統可執行的檔案,可以為它建立一個路徑連結
ln -s ~/.sublime/sublime_text(檔案位置) ~/bin/(檔名)


自己下載原始碼
hello-2.2.tar.bz2  解壓後
進入相應的目錄結構中
三步曲
第一   ./configure
第二   make
第三   sudo make install 


sudo apt-get instal ncursew ...  安裝一些庫


DEB封裝包,可以解決各種安裝問題,安裝位置,程式本身等等
sudo dpkg -i google-chrome-stable_current_i386.deb
一個deb包安裝後,會在相應的包資料庫中留下豐富的資訊,以便幫助以後的管理


通過dpkg -l|grep chrome(篩選字串)
就可以檢視相應的安裝包


如果想檢視某個包在系統上安裝了那些檔案,可以
dpkg -L google-chrome-stable(包名)


如果在使用過程中想知道某個檔案由哪個包提供
則 dpkg -S /opt/google/chrome/chrome(檔名)


軟體倉庫  一般是通過原始碼包釋出


安裝軟體
sudo apt-get install git(軟體名)
刪除軟體
可以用sudo apt-get remove git
但是如果要把配置檔案也刪除的話可以
sudo apt-get purge git




有時候我們要安裝的軟體我們知道,但具體包名不知,可以
apt -cache search ncurse|less 檢視
也可以通過Tab Tab 兩次進行補齊


如果一些軟體需要依賴檔案,系統會提示是否安裝






shell 指令碼程式設計
有時候需要許多命令去執行,
則可以通過指令碼程式設計的方式去進行


指定解析器    第一行要指定解析器
語句即命令    
位置引數
指令碼不再當前shell 執行     而是另開一個shell 
迴圈控制
遠端執行
確認執行
其他語言寫指令碼


./peter.sh  執行檔案 另開shell
可以通過source  peter.sh  則是在當前工作目錄執行


vim rename.sh
建立並編輯檔案
#!/usr/bin/env bash    //宣告行


cd $1             //實用引數


for file in a b c
do   //開始
mv $file  $file.txt
done   //結束
但上面有侷限性




在鍵盤Tab鍵上方有個特殊的導引號 `````
導引號中放入命令,則可以取出命令的輸出


#!/usr/bin/env bash    //宣告行


cd $1             //實用引數
echo I am in `pwd`


for file in `ls`
do   //開始
mv $file  $file.txt
done   //結束


python  bash