91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Advanced Bash-Shell Guide(Version 10) 學習筆記三

發布時間:2020-06-15 12:17:06 來源:網絡 閱讀:561 作者:蔣文華 欄目:大數據

書上的腳本比較多 記錄比較有用的腳本

更好的方式檢查命令行參數是否為數字

40 # E_WRONGARGS=85 # Non-numerical argument (bad argument format).
41 #
42 # case "$1" in
43 # "" ) lines=50;;
44 # *[!0-9]*) echo "Usage: `basename $0` lines-to-cleanup";
45 # exit $E_WRONGARGS;;
46 # * ) lines=$1;;
47 # esac


更好的方式檢查命令行參數數量是否正確

1 E_WRONG_ARGS=85
2 script_parameters="-a -h -m -z"
3 # -a = all, -h = help, etc.
4
5 if [ $# -ne $Number_of_expected_args ]
6 then
7 echo "Usage: `basename $0` $script_parameters"
8 # `basename $0` is the script's filename.
9 exit $E_WRONG_ARGS
10 fi


更好的方式檢查是否在正確的目錄

63 # cd /var/log || {
64 # echo "Cannot change to necessary directory." >&2
65 # exit $E_XCD;
66 # }


備份源目錄的文件并且在目標目錄解壓

(cd /source/directory && tar cf - . ) | (cd /dest/directory && tar xpvf -)
一個更加有效的腳本是
cd source/directory
# tar cf - . | (cd ../dest/directory; tar xpvf -)
或
cp -a /source/directory/* /dest/directory
# cp -a /source/directory/* /source/directory/.[^.]* /dest/directory 
#這個復制源目錄的隱藏文件


備份最近24小時內改變的文件

#!/bin/bash

BACKUPFILE=backup-$(date +%m-%d-%Y)
archive=${1:-$BACKUPFILE}
# 如果在命令行中沒有指定參數,就是用如下的格式
# it will default to "backup-MM-DD-YYYY.tar.gz."

tar cvf - `find . -mtime -1 -type f -print` > $archive.tar
gzip $archive.tar
echo "Directory $PWD backed up in archive file \"$archive.tar.gz\"."


如果文件太多或者文件名有空白字符,上面的腳本可能出錯

更好的備份方案   tar -r 追加到歸檔文件

# -------------------------------------------------------------------
# find . -mtime -1 -type f -print0 | xargs -0 tar rvf "$archive.tar"
或
# find . -mtime -1 -type f -exec tar rvf "$archive.tar" '{}' \;
exit 0


獲取命令行參數的最后一個參數

args=$# # Number of args passed.
lastarg=${!args}
# Note: This is an *indirect reference* to $args ...
# Or: lastarg=${!#}


${file#*/} :拿掉第一條 / 及其左邊的字符串:dir1/dir2/dir3/my.file.txt
${file##*/} :拿掉最后一條 / 及其左邊的字符串:my.file.txt
${file#*.} :拿掉第一個 . 及其左邊的字符串:file.txt
${file##*.} :拿掉最后一個 . 及其左邊的字符串:txt
${file%/*} :拿掉最后條 / 及其右邊的字符串:/dir1/dir2/dir3
${file%%/*} :拿掉第一條 / 及其右邊的字符串:(空值)
${file%.*} :拿掉最后一個 . 及其右邊的字符串:/dir1/dir2/dir3/my.file
${file%%.*} :拿掉第一個 . 及其右邊的字符串:/dir1/dir2/dir3/my




向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

德阳市| 平乡县| 潜山县| 上栗县| 措美县| 当雄县| 陆河县| 汕尾市| 临海市| 将乐县| 岳普湖县| 曲水县| 攀枝花市| 宜阳县| 龙胜| 旌德县| 晋州市| 冷水江市| 正镶白旗| 万宁市| 册亨县| 体育| 西乌珠穆沁旗| 凭祥市| 云龙县| 哈巴河县| 右玉县| 乐清市| 徐闻县| 湖北省| 大方县| 德阳市| 安塞县| 湄潭县| 宣恩县| 丰顺县| 安远县| 新巴尔虎右旗| 高邮市| 襄汾县| 西畴县|