1. 程式人生 > >Linux 基礎命令(十)—— SHELL指令碼程式設計進階(一)

Linux 基礎命令(十)—— SHELL指令碼程式設計進階(一)


# 使用示例
# ./user.sh  --add MAGE,WANG,HELLO -v
# ./user.sh  -h

#!/bin/bash

DEBUG=0
ADD=0
DEL=0

for I in `seq  $#`; do
case $1 in
-v|--verbose)
    DEBUG=1          #是否用來輸出詳情
    shift           # 引數列表向左 移動 1 個
    ;;
-h|--help)
    echo "Usage:`basename $0` --add USER_LIST --del USER_LIST -v|--verbose -h|--help"
exit 0 ;; --add) ADD=1 ADDUSERS=$2 shift 2 ;; --del) DEL=1 DELUSERS=$2 shift 2 ;; esac done if [ $ADD -eq 1 ]; then for USER in `echo $ADDUSERS | sed '[email protected],@ @g'`; do #將使用者列表分割 if id $USER &> /dev/null; then [ $DEBUG</span> <span class="nt">-eq</span> 1 <span class="o">]</span> <span class="o">&amp;&amp;</span> <span class="nb">echo</span> <span class="s2">"</span><span class="nv">$USER
exists" else useradd $USER [ $DEBUG</span> <span class="nt">-eq</span> 1 <span class="o">]</span> <span class="o">&amp;&amp;</span> <span class="nb">echo</span> <span class="s2">"Add user </span><span class="nv">$USER
finished." fi done fi if [ $DEL -eq 1 ]; then for USER in `echo $DELUSERS | sed '[email protected],@ @g'`; do if id $USER &> /dev/null; then userdel -r $USER [ $DEBUG</span> <span class="nt">-eq</span> 1 <span class="o">]</span> <span class="o">&amp;&amp;</span> <span class="nb">echo</span> <span class="s2">"Delete user </span><span class="nv">$USER finished " else [ $DEBUG</span> <span class="nt">-eq</span> 1 <span class="o">]</span> <span class="o">&amp;&amp;</span> <span class="nb">echo</span> <span class="s2">"user </span><span class="nv">$USER not exists." fi done fi

相關推薦

Linux 基礎命令—— SHELL指令碼程式設計()

# 使用示例 # ./user.sh --add MAGE,WANG,HELLO -v # ./user.sh -h #!/bin/bash DEBUG=0 ADD=0 DEL=0 for I in `seq $#`; do case $1 in -v|--verbose) DEBUG=

Linux命令——Shell程序設計變量與操作符

語法 接口 表數 lin ges images chmod .cn 分享 Shell是linux系統中用戶和系統交互的接口,它除了作為命令解釋器以外,還是一種高級程序設計語言。在前面介紹的linux命令中,Shell都作為命令解釋器出現。下面分兩節簡單介紹腳本程序設計中的語

Linuxshell指令碼

一、shell定義: 使用者直接面對的不是計算機硬體而是shell。使用者將指令告訴shell,然後shell傳輸給系統核心。接著核心支配計算機硬體。 我們在Linux中輸入命令的介面就成為shell。 二、shell指令碼知識 2.1、開頭#!/bin/sh

linux 基礎命令1

linux安裝完系統,接下來就可以動手操練一下了首先,我們最應該關心的應該是設備的硬件信息,比如cpu、內存、分區、網卡查看cpu信息命令: lscpu類似的查看cpu信息命令還有:cat /proc/cpuinfo查看內存信息命令: free -h-h是以人類易讀的方式顯示,說白了就是有容量單位其中-/+

linux 基礎命令 2

網絡 linux 1、alias 定義或者顯示別名eg:alias date=‘date "+%F %T"‘當我們輸入date的時候,其實就相當於輸入date "+%F %T",簡單方便;但是,這個別名只是在當前shell進程中生效,一旦我們退出再登陸,這個別名就不會再生效。 解決方法就是

linux基礎命令

命令1)grep 文本過濾語法:grep [選項] 模式或關鍵字 文件列表--clolor 帶顏色顯示匹配到的關鍵字-i 忽略大小寫-v 取反^ 以關鍵字開頭$ 以某個關鍵字結尾^$ 空行-c 統計匹配到的行數-l 與-r聯用,只顯示包含關鍵字的文件的名字-r 遞歸顯示-q 靜默輸出 (寫腳本時使用)-n 顯

linux 基礎命令

linux 命令 今天繼續和大家分享(承接上一章) (40)vim +文件名(編輯文件,如果文件不存在也是可以編輯的,但是必須保存,單獨使用vim是打開vim的使用手冊,裏面一樣可以編輯 文字,但是保存退出前要這麽寫shift+:w(空格)/路徑/文件名) [root@localhost boke]#

linux 基礎命令

linux 基礎命令 上一篇的有個地方補充下(ugo權限對root是不好用的,但是對於其他用戶是好用的) 今天主要跟大家分享下權限 1.UGO權限U:user(擁有者)ownerG:group(所屬組)O:others(其他人) 2. [root@localhost .ssh]# ll -rw-

linux 基礎命令

linux 基礎知識 硬盤管理(分區,swap,LVM) DPT:分區表(64)分區方式:MBR,GPT MSDOS:硬盤總大小小於2T(15個分區) 1個分區占用16個字節,msdos最多可以分為4個分區。主分區,擴展分區,邏輯分區 hd sd vdhd hd(IED)sda1 sd表示硬盤

linux基礎命令筆記

保存 who 連通 重啟命令 網站名 查找命令 分鐘 區分大小寫 locate 目錄處理命令ls [選項][參數] --list路徑 /bin/ls-a 所有文件,包括隱藏文件,以“.”開頭的文件是隱藏文件(all)-l 長格式顯示-h 人性化顯示文件大小

Linux 基礎命令

ini sss bcd use 個數字 定向 列排序 nbsp 結果 1.file檢查並顯示文件類型(determine file type) 一般用法就是file 後面接要查看的文件 可以一個或多個 [root@test test]# ll total 140 -rw-

linux基礎:基於Redhat7系統中的定時任務

定時任務CRONTAB概念/介紹 crontab命令用於設定週期性被執行的指令。該命令從標準輸入裝置讀取指令,並將其存放於“crontab”檔案中,以供之後讀取和執行。 cron 系統排程程序。 可以使用它在每天的非高峰負荷時間段執行作業,或在一週或一月中的不同時段執行。cron是系統主

Linux基礎命令

31、配置當前使用者環境變數:vim /etc/profile 32、su ryze:切換使用者 33、sudo su:進入root身份 34、sudo password gec:給gec使用者改密碼 35、命令模式下:          

Linux基礎命令

21、sudo :將當前身份臨時變為root來執行某些命令 22、apt-get 安裝軟體(需聯網)         suso apt-get install package : 安裝包     

Linux基礎命令2

(2) 備份與恢復文件1.使用壓縮和解壓縮工具(1)gzip預設會刪除原檔案-d 解壓縮-#: 指定壓縮比,壓縮比越小,速度越大解壓:gunzip例:壓縮文字a.txt[[email protected]~]#gzip a.txt[[email protected]~]# ls -lh a

Linux基礎命令:重定向、展開與引用——cat、sort、uniq、grep、wc、head、tail、tee

I/O重定向 通過這個工具,可以重定向命令的輸入輸出,命令的輸入來自檔案,而輸出也存到檔案。 也可以把多個命令連線起來組成一個強大的命令管道。 cat — 連線檔案 sort — 排序文字行 uniq — 報道或省略重複行 grep — 列印匹配行 wc — 列印

linux基礎命令1

檔案系統 檔案和目錄被組織成一個單根倒置樹結構 檔案系統從根目錄下開始,用“/”表示  根檔案系統(rootfs):root filesystem  檔名稱區分大小寫  以.開頭的檔案為隱藏檔案 路徑分隔的 / 檔案有兩類資料: 元資料:metadata

Linux基礎命令:高階鍵盤操作與許可權控制——history、自動補全、命令列快捷鍵、歷史命令展開、id、chmod、umask、su、sudo、chown、chgrp、passwd

高階鍵盤操作 Linux終端支援各種快捷鍵操作。掌握這些快捷鍵以及命令列互動式編輯特性,基本可以告別滑鼠操作了。 clear - 清空螢幕 history - 顯示歷史列表內容 小技巧:Linux的圖形使用者介面中,非最大化的視窗是預設隱藏頂部選項卡的,可以通過保持按

Linux基礎命令:程序——ps、top、jobs、bg、fg、kill、killall、shutdown

目錄 程序 檢視程序 中斷程序 訊號 程序 Linux通過使用程序來管理多工。程序就是Linux組織安排正在等待使用CPU的各種程式的方式。 ps – 報告當前程序快照 top – 顯示任務 jobs –

linux常用命令程序管理

一、程序檢視 (一)top工具 1.top  實時得檢視程序的狀態,以及系統的一些資訊(如 CPU、記憶體資訊等) 第一行資料: 內容 解釋 top 當前程式名稱 11:05:18 當前的系統的時間 up 8 days,17:12 該機器已經啟動了多長時間 1 user 當