我希望能夠以 yyyy-mm、mm/yyyy、yyyy-mm-dd 和 mm/dd/yy 的形式將日期傳遞給腳本。
例如:
$ ./parse.sh 2021-03 2021-03-14 3/14/19 11/2019
year: 2021 / month: 03 / day:
year: 2021 / month: 03 / day: 14
year: 2019 / month: 03 / day: 14
year: 2019 / month: 11 / day:
此腳本適用于具有年、月和日的值,但不僅適用于年和月:
#!/usr/bin/env bash
for arg in "$@"
do
# echo "parsing $arg..."
read -r y m d <<< "$(date ' %Y %m %d' -d "$arg")"
echo "year: $y / month: $m / day: $d"
done
例子:
$ ./parse.sh 2021-03 2021-03-14 3/14/19 11/2019
date: invalid date ‘2021-03’
year: / month: / day:
year: 2021 / month: 03 / day: 14
year: 2019 / month: 03 / day: 14
date: invalid date ‘11/2019’
year: / month: / day:
關于如何正確處理月/年組合的任何建議?
uj5u.com熱心網友回復:
#!/bin/bash
for arg
do
case $arg in
*-* ) IFS='-' read -r year month day ;;
*/*/*) IFS='/' read -r month day year ;;
*/* ) IFS='/' read -r month year day ;; # day is here for reset
esac <<< "$arg"
echo "year: $year / month: $month / day: $day"
done
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/372391.html
標籤:猛击
上一篇:滑動擴展影片旁邊的專案
