https://github.com/hoijui/repvar
A simple CLI filter to replace variables of the style `${KEY}` in text with their respective value.
https://github.com/hoijui/repvar
cli fchh interfacer-project-eu interfacer-project-eu-wp4-3 oseg simple text-processing text-replacer tool unix-style
Last synced: about 2 months ago
JSON representation
A simple CLI filter to replace variables of the style `${KEY}` in text with their respective value.
- Host: GitHub
- URL: https://github.com/hoijui/repvar
- Owner: hoijui
- License: agpl-3.0
- Created: 2021-08-03T14:32:10.000Z (almost 4 years ago)
- Default Branch: master
- Last Pushed: 2025-02-08T09:19:51.000Z (4 months ago)
- Last Synced: 2025-03-23T18:54:11.663Z (2 months ago)
- Topics: cli, fchh, interfacer-project-eu, interfacer-project-eu-wp4-3, oseg, simple, text-processing, text-replacer, tool, unix-style
- Language: Rust
- Homepage:
- Size: 308 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# `repvar` - Variable replacing, UNIX-style text filter
[](
LICENSE.txt)
[](
https://api.reuse.software/info/github.com/hoijui/repvar)
[](
https://github.com/hoijui/repvar)
[](
https://crates.io/crates/repvar)
[](
https://docs.rs/repvar)
[](
https://deps.rs/repo/github/hoijui/repvar)
[](
https://github.com/hoijui/repvar/actions)[](
https://fabcity.hamburg)
[](
https://opensourceecology.de)A tiny CLI tool that replaces variables of the style `${KEY}`
in text with their respective value.
It can also be used as a rust library.For the CLI tool,
the variables can be read from the environment
or be directly supplied through CLI switches,
like `-Dkey=value`.> **NOTE** \
> The author is a rust-newb.
> This crate probably only makes sense for himself,
> and it is not using the power of rust as should be.
> It also could probably be written in just 10 lines of code,
> using one or two regexes, not loosing any performance.## Usage
### Simplisitc
```bash
$ export KEY_A="replacement" # setting an env.-variable
$ echo 'Text ${KEY_A}.' \ # input text
| repvar --env # replacing variables
Text replacement. # output
```### Slightly more elaborate
```bash
$ export first="the environment"
$ echo 'Variables from ${first}, ${second}, ${not_supplied} and $${quoted}.' \
| repvars --env -D"second=the CLI"
Variables from the environment, the CLI, ${not_supplied} and ${quoted}.
```More usage info can be seen when running:
```bash
repvars --help
```## Building
```bash
# To get a binary for your system
cargo build --release# To get a 64bit binary that is portabel to all Linux systems
scripts/build
```## Testing
To run unit-, doc- and integration-tests:
```bash
scripts/test
```## Similar projects
- More powerful string templating engine,
but very much in line with the unix philosophy as well
## Funding
This project was funded by the European Regional Development Fund (ERDF)
in the context of the [INTERFACER Project](https://www.interfacerproject.eu/),
from August 2021 (project start)
until March 2023.