本案例要求熟悉linux shell環境的特點,主要練習以下操作:
切換使用者的shell環境
練習命令歷史、命令別名
重定向標準輸入/輸出/錯誤輸出
管道操作實踐
步驟一:切換使用者的shell環境
什麼是shell?
shell是在linux核心與使用者之間的直譯器程式,通常指的是bash,負責向核心翻譯及傳達使用者/程式指令。
shell的使用方式:
1.互動執行指令:人工干預,執行效率底。
2.非互動執行指令:安靜地在後台執行,執行效率高,方便寫指令碼。
若需要臨時使用另一種shell環境,可以直接執行對應的shell直譯器程式,比如只要執行ksh可以切換到ksh命令列環境。
1. [root@dyy ~]# yum -y install ksh //若缺少ksh請先安裝ksh包
2. .. ..
3. [root@dyy ~]# cat /etc/shells
4. /bin/sh
5. /bin/bash
6. /sbin/nologin
7. /bin/tcsh
8. /bin/csh
9. /bin/ksh //確認當前系統已識別ksh
10.
11. [root@dyy ~]# ksh //進入ksh環境
12. [root@sdyy]~# exit //返回到切換前的bash環境
若希望修改使用者的登入shell,管理員可以直接通過usermod(或useradd)命令設定。比如,以下操作可將使用者zhangsan的登入shell改為/bin/ksh:
1. [root@dyy ~]# usermod -s /bin/ksh zhangsan //執行修改操作
2. [root@dyy ~]# grep 'zhangsan' /etc/passwd
3. zhangsan:x:516:516::/home/zhangsan:/bin/ksh //修改後
步驟二:快捷鍵與tab鍵補齊,常見快捷鍵如表-1所示
[步驟三:練習命令歷史
1)檢查歷史命令的容量。
預設記錄1000條,通過全域性變數histsize設定,對所有使用者有效:
1. [root@dyy ~]# grep histsize /etc/profile
2. 3. histsize=1000
檢視已為當前使用者記錄的歷史命令條數:
1. [root@dyy ~]# history | wc -l
2. 1000
2)檢視歷史命令列表。
列出最近執行的10條歷史命令:
1. [root@dyy ~]# history | tail
2. 1028 grep 'zhangsan' /etc/passwd
3. 1029 cat /etc/redhat-release
4. 1030 usermod -s /bin/tcsh zhangsan
5. 1031 grep 'zhangsan' /etc/passwd
6. 1032 su - zhangsan
7. 1033 echo 1234567 | passwd --stdin zhangsan
8. 1034 su - zhangsan
9. 1035 grep histsize /etc/profile
10. 1036 history | wc -l
11. 1037 history | tail
3)呼叫指定的歷史命令。
重新執行歷史命令列表中的第1028條操作:
1. [root@dyy ~]# !1028
2. grep 'zhangsan' /etc/passwd
3. zhangsan:x:516:516::/home/zhangsan:/bin/bash
4)清空歷史的命令
1. [root@dyy ~]# history -c //清空自己的歷史命令
2. [root@dyy ~]# > ~/.bash_history //清空記錄檔案
3. [root@dyy ~]# history //再次檢查歷史命令列表
4. 42 > ~/.bash_history
5. 43 history
步驟四:管道操作實踐
借助於管道符「|」,可以將一條命令的標準輸出交給另一條命令處理,在一條命令行內可依次使用多個管道。
1)統計/etc/目錄下資料的數量。
1. [root@dyy ~]# ls -l /etc | wc -l
2. 254
2)列出yum庫里名稱中含cluster的軟體包。
1. [root@dyy ~]# yum list | grep cluster
2. cluster-cim.x86_64 0.12.1-7.el5 rhel5-cluster
3. cluster-snmp.x86_64 0.12.1-7.el5 rhel5-cluster
4. … …
必須掌握的排序
大神總結的很好。學而時習之,善於總結。非常恨那些把演算法排序之類的搞得異常麻煩的人,盡可能簡單一點,簡單了,容易理解了,才好記,上了戰場,才用得著.人家的不好用,只好自己總結,重寫原理與過程.口訣 冒泡 n 1,n i 1,比的是j與j 1 插入 n 1,i 1,比的是i 1與j 選擇 n,n,開始...
設計師必須掌握的美術基礎
三大基本關係 首先我們要了解的是在美術裡最重要的三個主要關係,他們是 結構關係 素描關係 色彩關係。這三個關係簡單來說就是,結構關係是物體的透視關係 也就是近大遠小的空間關係 和物體的基本結構 可以把乙個複雜的物體拆解成基本的圓形 三角形 正方形 長方形等簡單容易描繪的結構 等,結構關係是我們如何理...
軟體測試基礎面試你必須掌握的
1 什麼是軟體測試?軟體測試的目的與原則?定義 在規定的條件下對程式進行操作,以發現程式錯誤 衡量軟體質量,並對其是否能滿足設計要求進行評估的過程。目的 在於發現錯誤 發現程式中存在的 或業務邏輯錯誤 檢驗產品是否符合使用者的需求 提高使用者體驗。原則 如二八原則 測試應盡早啟動 介入。2 什麼是軟...