根據輸入選項shell指令碼新增資訊

2021-08-01 02:59:22 字數 2320 閱讀 3013

此指令碼只是練習(存在冗餘**)函式使用方法、判斷及迴圈。如完善**後可在/bin下生成連線指令碼,隨時使用。

1

#!/bin/bash

2#author:samrtwy(wechat:smart_wy)

3#version:2.1

4#date:2017-05-13

5#descripton: add script description info for option 6#

78 filename=$(cd $(dirname $1) && pwd)/$1 || exit

1#獲取檔案的完全路徑,失敗退出

910 function option

() "

$filename

# 新增新資訊

19 [ $? -eq

0 ] && echo

-e"add autor ok !\n"

# 提示新增成功

20 shift 2

# 切掉處理過的引數,下同

21 [[ -z $@ ]] && exit

0# 如果沒有引數退出

22 ;;

23 -t|--time)

24 sed -i "/[tt]ime/d"

$filename

25 sed -i "3c# time: $"

$filename

26 [ $? -eq

0 ] && echo

-e"add time ok !\n"

27 shift 2

28 [[ -z $@ ]] && exit

029 ;;

30-d|--description)

31 sed -i "/[dd]escription/d"

$filename

32 sed -i "5c# description:$"

$filename

33 [ $? -eq

0 ] && echo

-e"add description ok !\n"

34 shift 2

35 [[ -z $@ ]] && exit

036 ;;

37 -v|--version)

38 sed -i "/[vv]ersion/d"

$filename

39 sed -i "4c# version: $"

$filename

40 [ $? -eq

0 ] && echo

-e"add version ok !\n"

41 shift 2

42 [[ -z $@ ]] && exit

043 ;;

44 -h|--help)

45 cat << eof

46 usage: scriptname [-a|--author user] [-t|--time date] [-d|--descript message] [-v|--version digit] [-h|--help]"

47 eof

48 exit 1

49 ;;

50 *) # 以上引數外的引數執行此處**

51 cat << eof

52 usage: scriptname [-a|--author user] [-t|--time date] [-d|--descript message] [-v|--version digit] [-h|--help]"

53 eof

54exit

255 ;;

56esac

57done

58 }

5960 function sai

() 77

78 sai "$@"

#呼叫sai函式,將位置引數傳遞給sai

shell指令碼 自動輸入密碼

平時在控制台輸入指令如 sudo ssh ftp或者修改admin許可權的檔案時候都會要求輸入password,但是在she ll指令碼執行過程中該如何互動實現自動輸入密碼呢?下面總結三種實現方法。shell用重定向作為標準輸入的用法是 cmd 實現ftp自動登入並執行ls指令的用法如下 其中pet...

Makefile中新增shell指令碼

makefile中可以加入shell指令碼語言,但是編寫形式不一樣,makefile中都是以行為單位的,所以必須將makefile中的shell指令碼通過 連線成一行。例如 if d hisi home src sdk modify hidrv v0a1 source osdrv kernel li...

shell指令碼批量新增使用者

shell指令碼 shell 是命令直譯器 檢視當前系統支援的shell型別 cat etc shells 檢視當前使用shell echo shell 使用者新增 useradd 引數 名字 e 指定使用者失效時間 c 新增使用者備註 在 etc passwd第五字段 d 指定使用者家目錄 使用者...