Skip to content

Instantly share code, notes, and snippets.

@reduardo7
Last active November 4, 2025 15:02
Show Gist options
  • Save reduardo7/5d8443130495d3ad0e630eb344a37707 to your computer and use it in GitHub Desktop.
Save reduardo7/5d8443130495d3ad0e630eb344a37707 to your computer and use it in GitHub Desktop.
Output prefix with timestamp
#!/usr/bin/env bash
{
echo foo 1
sleep 1
echo bar 1 >&2
echo foo 2
sleep 1
echo bar 2 >&2
} \
2> >(perl -pe 'use POSIX strftime; print strftime("%Y-%m-%d %H:%M:%S", localtime) . " [ERR] "' >&2) \
> >(perl -pe 'use POSIX strftime; print strftime("%Y-%m-%d %H:%M:%S", localtime) . " [INF] "')
#!/usr/bin/env bash
# Time
output-prefix() {
"$@" \
2> >(perl -pe 'use POSIX strftime; print strftime("%Y-%m-%d %H:%M:%S", localtime) . " [ERR]'"${prefix}"' "' >&2) \
> >(perl -pe 'use POSIX strftime; print strftime("%Y-%m-%d %H:%M:%S", localtime) . " [INF]'"${prefix}"' "')
}
output-prefix ./loop.sh foo
@guillaume86
Copy link

Ha sorry must've mixed up my tests, seems ok!

@reduardo7
Copy link
Author

@guillaume86 Timestamp fixed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment