An open API service indexing awesome lists of open source software.

https://github.com/shellshape/ssplit

An extremely simple CLI tool to split string contents.
https://github.com/shellshape/ssplit

cli cli-tool rust string-manipulation strings

Last synced: 5 months ago
JSON representation

An extremely simple CLI tool to split string contents.

Awesome Lists containing this project

README

          

# ssplit

An extremely simple CLI tool to split string contents.

## Install

You can either download the latest release builds form the [Releases page](https://github.com/shellshape/ssplit/releases) or you can install it using cargo install.

```
cargo install ssplit
```

## Usage

```
❯ ssplit --help
Simple CLI tool to split string contents

Usage: ssplit [OPTIONS] --split [FILE]

Arguments:
[FILE] A file to be read as input; If not provided, StdIn is used as input

Options:
-s, --split The string on which the input is split
-d, --delimiter The delimiter for the split elements [default: "\n"]
-i, --idx Only select a given index, indices or index ranges (separated by ','); Ranges are defined in the form of {start}-{end} (.i.e. 3-7)
-h, --help Print help
-V, --version Print version
```

By default, all splitted elements are printed to StdOut delimited by the given delimiter (new line by default).

If you pass the `-i` or `--idx` parameter, you can define a specific index, indices or index ranges to be returned. For example:

```
ssplit mydata.txt -s '/' -i '1,3,6-9'
```

The example above will split the input and only print elements at index 1, 3, 6, 7, 8 and 9.

## Performance

Because the tool reads the input in chunks and directly prints the split output to StdOut, the runtime should be linear to the size of the input and the memory consumption should be constant.