shell2batch

crates.io Build Status Build status codecov
license Libraries.io for GitHub Documentation downloads
Built with cargo-make

Coverts simple basic shell scripts to windows batch scripts.

Overview

While it is not really possible to take every shell script and automatically convert it to a windows batch file, this library provides a way to convert simple basic shell commands to windows batch commands.
The original goal of this library is to provide users of cargo-make a way to write simple tasks with shell scripts without duplicating their code for each platform.

Usage

Simply include the library and invoke the convert function as follows:

```rust extern crate shell2batch;

fn main() { let script = shell2batch::convert( r#" #this is some test code cp file1 file2

    #another
    mv file2 file3

    #flags are supported
    rm -Rf ./directory
    "#
);

assert_eq!(
    script,
    r#"

@REM this is some test code xcopy file1 file2

@REM another move file2 file3

@REM flags are supported del /Q ./directory "# );

println!("Script: {}", script);

} ```

Installation

In order to use this library, just add it as a dependency:

ini [dependencies] shell2batch = "*"

API Documentation

See full docs at: API Docs

Contributing

See contributing guide

Release History

| Date | Version | Description | | ----------- | ------- | ----------- | | 2017-10-22 | v0.1.2 | Added command flags replacements. | | 2017-10-21 | v0.1.0 | Initial release. |

License

Developed by Sagie Gur-Ari and licensed under the Apache 2 open source license.