All Projects → knipknap → Exscript

knipknap / Exscript

Licence: mit
A Python module making Telnet and SSH easy

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Exscript

Golden Gate
Framework to connect wearables and other IoT devices to mobile phones, tablets and PCs with an IP-based protocol stack over Bluetooth Low Energy
Stars: ✭ 223 (-33.83%)
Mutual labels:  network, networking, protocol
Ceras
Universal binary serializer for a wide variety of scenarios https://discord.gg/FGaCX4c
Stars: ✭ 374 (+10.98%)
Mutual labels:  network, networking, protocol
Ruffles
Lightweight and fully managed reliable UDP library.
Stars: ✭ 131 (-61.13%)
Mutual labels:  network, networking, protocol
Vssh
Go Library to Execute Commands Over SSH at Scale
Stars: ✭ 707 (+109.79%)
Mutual labels:  automation, network, ssh
Diffios
Cisco IOS diff tool
Stars: ✭ 23 (-93.18%)
Mutual labels:  automation, network, networking
Sshkey Audit
Automate SSH key management
Stars: ✭ 55 (-83.68%)
Mutual labels:  automation, network, ssh
Bash Toolkit
Este proyecto esá destinado a ayudar a los sysadmin
Stars: ✭ 13 (-96.14%)
Mutual labels:  automation, network, networking
Pynms
A vendor-agnostic NMS for carrier-grade network simulation and automation
Stars: ✭ 73 (-78.34%)
Mutual labels:  automation, network, networking
Napalm Salt
Modules for event-driven network automation and orchestration using Salt
Stars: ✭ 116 (-65.58%)
Mutual labels:  automation, network
Pfsense Api
The missing REST API package for pfSense
Stars: ✭ 126 (-62.61%)
Mutual labels:  automation, networking
Td4a
Template designer for automation
Stars: ✭ 139 (-58.75%)
Mutual labels:  automation, network
Sshkit.ex
An Elixir toolkit for performing tasks on one or more servers, built on top of Erlang’s SSH application.
Stars: ✭ 108 (-67.95%)
Mutual labels:  automation, ssh
Netshot
Network Configuration and Compliance Management
Stars: ✭ 91 (-73%)
Mutual labels:  automation, network
Penta
Open source all-in-one CLI tool to semi-automate pentesting.
Stars: ✭ 130 (-61.42%)
Mutual labels:  automation, network
Vkbot
Простой разговорный бот на PHP
Stars: ✭ 88 (-73.89%)
Mutual labels:  automation, network
Securecrt Tools
SecureCRT scripts, written in Python, for doing various tasks when connected to Cisco equipment.
Stars: ✭ 154 (-54.3%)
Mutual labels:  automation, networking
Netdev
Asynchronous multi-vendor library for interacting with network devices
Stars: ✭ 172 (-48.96%)
Mutual labels:  automation, network
Ansible For Network Engineers
Репозиторий книги "Ansible для сетевых инженеров". Книга в процессе переноса на readthedocs и обновления содержания на Ansible 2.9!
Stars: ✭ 74 (-78.04%)
Mutual labels:  automation, network
Wordmove
Multi-stage command line deploy/mirroring and task runner for Wordpress
Stars: ✭ 1,791 (+431.45%)
Mutual labels:  automation, ssh
Assh
💻 make your ssh client smarter
Stars: ✭ 2,340 (+594.36%)
Mutual labels:  automation, ssh

Exscript

Build Status Coverage Status Code Climate Documentation Status

Summary

Exscript is a Python module and a template processor for automating network connections over protocols such as Telnet or SSH. We attempt to create the best possible set of tools for working with Telnet and SSH.

Exscript also provides a set of tools and functions for sysadmins, that simplify regular expression matching, reporting by email, logging, or syslog handling, CSV parsing, ip address handling, template processing, and many more.

Exscript may be used to automate sessions with routers from Cisco, Juniper, OneAccess, Huawei, or any others. If you want to configures machines running Linux/Unix, IOS, IOS-XR, JunOS, VRP, or any other operating system that can be used with a terminal, Exscript is what you are looking for.

Do you need commercial support?

Exscript is supported by Procedure 8. Get in touch if you need anything!

Method 1: Using Exscript with Python

Simple

from Exscript.protocols import SSH2
from Exscript.util.interact import read_login

conn = SSH2()
conn.connect('localhost')
conn.login(read_login())
conn.execute('uname -a')

Slightly more advanced (multi threaded)

from Exscript.util.start import start
from Exscript.util.file import get_hosts_from_file
from Exscript.util.file import get_accounts_from_file

def do_something(job, host, conn):
    conn.execute('uname -a')

accounts = get_accounts_from_file('accounts.cfg')
hosts = get_hosts_from_file('myhosts.txt')
start(accounts, hosts, do_something, max_threads=2)

Method 2: Using the Exscript command line tool

Create a file named test.exscript with the following content:

uname -a

To run this Exscript template, just start Exscript using the following command:

exscript test.exscript ssh://localhost

Awesome fact: Just replace ssh:// by telnet:// and it should still work with Telnet devices.

Documentation

Full documentation is here:

http://exscript.readthedocs.io

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].