#!/bin/bashPATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/binexport PATH# 1. 讓使用者輸入檔案名稱,并取得 fileuser 這個變數;echo -e "I will use 'touch' command to create 3 files." # 純粹顯示資訊read -p "Please input your filename: " fileuser # 提示使用者輸入# 2. 為了避免使用者隨意按 Enter ,利用變數功能分析檔名是否有設定?filename=${fileuser:-"filename"} # 開始判斷有否設定檔名# 3. 開始利用 date 指令來取得所需要的檔名了;date1=$(date --date='2 days ago' +%Y%m%d) # 前兩天的日期date2=$(date --date='1 days ago' +%Y%m%d) # 前一天的日期date3=$(date +%Y%m%d) # 今天的日期file1=${filename}${date1} # 底下三行在設定檔名file2=${filename}${date2}file3=${filename}${date3}# 4. 將檔名建立吧!touch "$file1" # 底下三行在建立檔案touch "$file2"touch "$file3"
1 回答

郎朗坤
TA貢獻1921條經驗 獲得超9個贊
filename=${fileuser:-"filename"}
等號右邊的意思是,
若變量 fileuser 為空(此前沒有得到賦值),則返回 "filename"。
若變量 fileuser 有值,則返回其當前值。
這是bash中的特有用法,為了確保變量filename無論如何都能得到賦值。
- 1 回答
- 0 關注
- 631 瀏覽
添加回答
舉報
0/150
提交
取消