mirror of
https://github.com/d0zingcat/dotfiles.git
synced 2026-05-28 15:10:25 +00:00
39 lines
1.0 KiB
Bash
Executable File
39 lines
1.0 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# Required parameters:
|
|
# @raycast.schemaVersion 1
|
|
# @raycast.title Convert Human-Readable Date To Epoch
|
|
# @raycast.mode silent
|
|
# @raycast.packageName Conversions
|
|
#
|
|
# Optional parameters:
|
|
# @raycast.icon ⏱
|
|
# @raycast.needsConfirmation false
|
|
# @raycast.argument1 {"type": "text", "placeholder": "Date"}
|
|
#
|
|
# Documentation:
|
|
# @raycast.description Convert human-readable date to timestamp epoch.
|
|
# @raycast.author Siyuan Zhang | d0zingcat
|
|
# @raycast.authorURL https://github.com/kastnerorz | https://d0zingcat.dev
|
|
|
|
date=${1}
|
|
length=${#date}
|
|
if [[ $length -eq 19 ]]; then
|
|
epoch=$(echo $(date -jRuf "%F %T" "$date" "+%s"))
|
|
echo -n "$epoch" | pbcopy
|
|
elif [[ $length -eq 10 ]]; then
|
|
epoch=$(echo $(date -jRuf "%F %T" "$date 00:00:00" "+%s"))
|
|
echo -n "$epoch" | pbcopy
|
|
elif [[ $length -eq 8 ]]; then
|
|
yyyy=$(echo $date | cut -c1-4)
|
|
mm=$(echo $date | cut -c5-6)
|
|
dd=$(echo $date | cut -c7-8)
|
|
epoch=$(echo $(date -jRuf "%F %T" "$yyyy-$mm-$dd 00:00:00" "+%s"))
|
|
echo -n "$epoch" | pbcopy
|
|
else
|
|
echo "Invalid date format."
|
|
exit 1
|
|
fi
|
|
|
|
echo "Converted $date to $epoch"
|