Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/shawn-shan/vassal
Vassal is a python package provide terminal automation. Save developers unnecessary labor to type in tons of duplicated and similar commands.
https://github.com/shawn-shan/vassal
automation python shell ssh terminal
Last synced: 10 days ago
JSON representation
Vassal is a python package provide terminal automation. Save developers unnecessary labor to type in tons of duplicated and similar commands.
- Host: GitHub
- URL: https://github.com/shawn-shan/vassal
- Owner: Shawn-Shan
- License: mit
- Created: 2018-11-16T02:53:33.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2018-11-17T01:44:55.000Z (about 6 years ago)
- Last Synced: 2024-11-07T14:44:58.695Z (11 days ago)
- Topics: automation, python, shell, ssh, terminal
- Language: Python
- Homepage:
- Size: 38.1 KB
- Stars: 7
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# Vassal - automated terminal
[![license](https://img.shields.io/github/license/mashape/apistatus.svg?maxAge=2592000)](https://github.com/Shawn-Shan/vassal/blob/master/LICENSE)
Vassal is a python package provide terminal automation. Save developers unnecessary labor to type in tons of duplicated and similar commands.
## Getting Started
1. Run a list of commands on a ssh server
```
from vassal.terminal import Terminal
shell = Terminal(["ssh username@host", "cd scripts", "python foo1.py", "python foo2.py"])
shell.run()
```2. upload/download files through scp
```
shell = Terminal(["scp username@host:/home/foo.txt foo_local.txt"])
shell.run()
```3. run commands every 1 sec
```
from vassal.terminal import Terminal
from vassal.scheduler import Scheduler
shell = Terminal(["ssh username@host", "cd scripts", "python foo1.py", "python foo2.py"])
shell = Scheduler(shell, sec=1)
shell.run()
```### Installing
```
pip install vassal
```## Built With
* [paramiko](http://www.paramiko.org/) - SSHv2 protocol
## Contributing
Please read [CONTRIBUTING.md](https://github.com/Shawn-Shan/vassal/blob/master/CONTRIBUTING.md) for details on our code of conduct, and the process for submitting pull requests to us.
## Authors
* **Shawn Shan** - *Initial work* - [https://www.shawnshan.com/](https://www.shawnshan.com/)
## License
This project is licensed under the MIT License - see the [LICENSE](https://github.com/Shawn-Shan/vassal/blob/master/LICENSE) file for details