tee
tee - Enhanced Output Redirection
The tee module executes a command and writes its output to both stdout and a specified file. Unlike traditional pipes, it preserves the original command's exit code and environment modifications.
When to Activate
- When logging build, test, or deployment outputs for CI/CD pipelines.
- When capturing both stdout and stderr while needing to react to command failures.
- When a command modifies environment variables that need to be maintained.
Core Principles & Rules
- Exit Code Integrity: Crucial for scripts where the following logic depends on the success of the logged command.
- Command Separation: Use the
--separator to distinguish between the output file and the command to run. - Append Mode: Support for
-ato append to the log file instead of overwriting.
Patterns & Examples
Log Build Output
# Capture build logs while ensuring the script stops on failure
x tee build.log -- make build
Capture Combined Output
# Log both stdout and stderr to a file
x tee /tmp/task.log -- eval 'npm run test 2>&1'
Logging Deployment
# Deploy and keep logs, allowing the exit code to be checked later
x tee deploy.log -- ./deploy.sh
Checklist
- Confirm if both stdout and stderr should be captured.
- Ensure the log file path is writable.
- Verify if append mode (
-a) is required.
More from x-cmd/skill
x-cmd
|
25x-security
This skill provides comprehensive security assessment and vulnerability management tools through x-cmd CLI, including network reconnaissance with Shodan, vulnerability scanning with OSV, and known exploited vulnerability tracking with KEV. This skill should be used when users need to perform security assessments, vulnerability research, network reconnaissance, or security monitoring from command line interfaces.
13x-network
This skill provides comprehensive network administration and diagnostic tools through x-cmd CLI, including network scanning with Nmap, ARP table management, DNS configuration, routing table analysis, and enhanced ping utilities. This skill should be used when users need to perform network diagnostics, troubleshoot connectivity issues, analyze network topology, or monitor network performance from command line interfaces.
11x-knowledge
This skill provides access to various knowledge search tools through x-cmd CLI, including Hacker News, Wikipedia, DuckDuckGo search, RFC documents, Project Gutenberg books, and Stack Exchange. This skill should be used when users need to search for technical information, browse online knowledge bases, or access documentation from command line interfaces.
6x-git
This skill provides comprehensive Git and code hosting platform management tools through x-cmd CLI, including GitHub, GitLab, Codeberg, Forgejo integration, and Git hooks management. This skill should be used when users need to manage Git repositories, work with code hosting platforms, automate Git workflows, or configure Git hooks from command line interfaces.
6x-system
This skill provides comprehensive system administration and monitoring tools through x-cmd CLI, including process management, macOS system utilities, network configuration, disk health monitoring, and storage analysis. This skill should be used when users need to perform system administration tasks, monitor system performance, manage network configurations, or troubleshoot system issues from command line interfaces.
6