getdate_err - Linux
Overview
getdate_err is a command-line utility designed to extract date and time information from a specified input file or standard input. It offers advanced error-handling capabilities, allowing users to handle invalid date formats and missing data effectively.
Syntax
getdate_err [OPTIONS] [FILE...]
Options/Flags
| Option | Description | Default |
|—|—|—|
| -a, –access | Retrieve the access time | N/A |
| -c, –create | Retrieve the creation time | N/A |
| -m, –modify | Retrieve the modification time | N/A |
| -b, –birthdate | Retrieve the birthdate from a POSIX file (if available) | N/A |
| -n, –null-input | Treat input as null-terminated strings, separating dates by newlines | N/A |
| -f, –file | Specifies an input file to extract date from. Multiple files can be specified. | N/A |
| -p, –pattern | Custom date format to use when parsing. See strftime
for formatting options. | %Y-%m-%d %H:%M:%S
|
| -e, –error | Error handling mode:
– ignore
: Ignore errors and continue with processing.
– warn
: Display a warning message for each error.
– stop
: Stop processing and exit with an error code. | ignore
|
| -d, –delimiter | Delimiter used to separate dates within the input file (when not using -n
). | \n
|
| -h, –help | Display usage information and exit. | N/A |
| -V, –version | Display version information and exit. | N/A |
Examples
Extract modification time from a file:
getdate_err -m file.txt
Retrieve birthdate from a POSIX file:
getdate_err -b /usr/bin/ls
Parse dates with a custom format:
getdate_err -p %d/%m/%Y input.txt
Handle errors:
Ignore errors:
getdate_err -e ignore invalid.txt
Warn about errors:
getdate_err -e warn invalid.txt
Stop on the first error:
getdate_err -e stop invalid.txt
Common Issues
- Invalid date formats: Ensure the date format specified with
-p
matches the format of dates in the input file. - Missing dates: If a file does not contain a valid date, an error will be raised depending on the specified error handling mode.
- Empty files: If the input file is empty, no date information can be extracted.
Integration
Combine with other commands:
Extract modification time and pass it to another command:
find . -type f -mmin -1 | getdate_err -m | sort
Use in scripts:
Extract dates within a script and perform conditional actions:
#!/bin/bash
for file in *.txt; do
date=$(getdate_err -m $file)
if [[ $date > "2023-01-01" ]]; then
echo "File $file was modified after 2023-01-01"
fi
done
Related Commands
- date: Display or set the system date and time.
- strptime: Convert a date and time string to a structured
tm
representation. - strftime: Convert a
tm
representation to a date and time string.