feat: add shell scripting with variables

Implemented roadmap #9: Shell scripts execution with variables.

Features:
- set <name> <value> - Set shell variable
- unset <name> - Remove variable
- vars - List all variables
- Variable substitution in all commands

Variable syntax:
- $VAR or ${VAR} - Shell variables
- $ENV:VARNAME - Environment variables

Variables expand before command execution, enabling:
- Dynamic key paths: put $BASE/$ID '{"data":"value"}'
- Reusable values: set TOKEN xyz && auth $TOKEN
- Script parameterization in batch files

Example batch script:
  set USER alice
  set KEY_PREFIX users
  put $KEY_PREFIX/$USER '{"name":"$USER"}'
  get $KEY_PREFIX/$USER

Variables are session-scoped and work in both interactive
and batch modes. Environment variables can be injected using
$ENV:HOME syntax.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2025-10-06 00:01:36 +03:00
parent bd73a1c477
commit efaa5cdcc9
5 changed files with 106 additions and 1 deletions

View File

@@ -67,6 +67,13 @@ Export/Import:
--skip-existing - Skip existing keys (default)
--overwrite - Overwrite existing keys
Shell Scripting:
set <name> <value> - Set shell variable
unset <name> - Remove shell variable
vars - List all variables
Variables: $VAR or ${VAR}
Environment: $ENV:VARNAME
Batch Operations:
batch <file> - Execute commands from file
source <file> - Alias for batch