星期二, 9月 23, 2014

2014IT鐵人賽-08-基礎指令練習-grep過濾以及history

2014IT鐵人賽-08-基礎指令練習-grep過濾以及history

今天一樣使用 EasyCloud  雲端簡單龍帳戶, 那就登入 https://gemini.nchc.org.tw/ 來開始練習openSUSE 基礎指令吧.


今天練習使用grep 指令來過濾我們要的字元以及使用 history 來觀察指令歷程


筆記部份:


上一個練習我們可以找出我們要的檔案名稱或是大小
但是如果我們想要找檔案內容包含哪些字串該如何?  這個時候我們就可以透過 grep 來過濾出我們所要的檔案.  在實務上我們可以利用 grep 來簡化設定檔的顯示, 不顯示註解以及空白行, 這樣在網路上請教問題的時候, 其他人也比較好判斷.
grep 過濾檔案的內容
  • -i 忽略大小寫
  • -w 符合整個字串
  • -v 符合就不要


接下來我們會開始談到 shell, 首先先介紹 shell 有分兩種以及會讀入的設定檔
Login shell 需要登入才能取得的shell
  • /etc/profile
  • /etc/bash.bashrc


Non-Login shell 需要登入才能取得的shell
  • /etc/bash.bashrc


我們今天要練習的是 history 指令, 可以列出指令的歷程, 有助於 trouble shotting.


history 列出指令歷程
  • 預設 HISTSIZE=1000
  • 存放在 ~/.bash_history
  • 可以用 Ctrl + R 來搜尋



開始練習吧


Lab: grep, egrep


#cd   /home/max/
#grep   max  /etc/* <找出 /etc/* 內有max字串>
#grep   Max   /etc/* <找出 /etc/* 內有Max字串>
#grep   -i   max   /etc/* <找出/etc/* max字串不分大小寫, -i 不分大小寫>
#grep  -w  max   /etc/* <找出 /etc/* 內有max字串, -w whole word>


#cp   /etc/apache2/httpd.conf   /home/max/ <複製http.confmax家目錄>
#cat  httpd.conf
#grep  -v  '^#' httpd.conf <請觀察內容>
#grep  -v  '^#' httpd.conf | grep -v '^$' <請觀察內容>
#grep  -v  '^#' httpd.conf | grep -v '^$' | wc -l <請觀察內容>
#wc -l httpd.conf <請觀察內容>
#egrep -v '^#|^$' httpd.conf <請觀察內容>


補充:
正規表示式: 龍門少尉的窩


Lab: history


#cd ~ <回到家目錄>
#history <觀察指令歷程>
#history 5
#ls -a
#cat .bash_history
#id <請觀察資訊>
#whoami <請觀察資訊>
#su - max <switch user切換身份為使用者max >
>id <請觀察資訊>
>whoami <請觀察資訊>
>exit <登出>


Fun with Day 8 ~




沒有留言: