GNU-Screen session module handler for NodeJs
Project description
What is this ?
This was build to handle and manage gnu-screen session. Actually work well.
Table of Contents
Required
- Python: 3.8
- GNU-Screen: 4.08.00
Installation
First make sure you have gnu-screen installed:
$ apt-get install screen
To run this project, use pip:
$ pip install gnu-screen
Functions
getAll()Return all available Screens.
Screen
Create a representation of gnu-screen session : Screen(id, mode="")
If you want to save logs change mode to 's'.
Events:
closeWhen screen is closed.stdoutstrWhen something new is append in logFile.
Methods:
Screen.exist()Check if screen's session is running.Screen.setup()Fetch self variable with running session.Screen.setRule(*rules)Rules to apply in screen session.Screen.write(*stdins)Write something in screen session.Screen.setStdout(state)Watch over logFile to callstdoutEvent.Screen.logFile()Return logFile.Screen.on(call)Set an event (disconnect(),close(),stdout(log)).Screen.run(stdin=None)Connect/create to screen session.Screen.close()Close screen session.Screen.kill(signal=15)Kill screen session.
KeyValues:
Screen.idstr | NoneScreen session's id.Screen.logFilePathstr | NonePath of logFile is there one.Screen.eventsdictScreen session events.Screen.pidint | NonePid of screen session if is running.Screen.datestr | NoneDate of screen session if is running.Screen.statestr | NoneState of screen session if is running.
Exemple
import os
import gnu_screen as sc
# Generate 10 screens session
for n in range(10):
scr = sc.Screen(id=f"test n°{n}")
print(scr)
scr.run()
# Find and close the 10 screens session
for scr in sc.getAll():
print(scr)
scr.close()
# Create a new screen session
test = sc.Screen(id="final test", mode="r")
test.run()
print(test)
# Allow "stdout" event
test.setStdout()
# Remove screen session
def close():
test.close()
if not test.pid:
print("Closed final test's screen session")
else:
test.kill()
print("Killed test's screen session")
#self kill
os.kill(os.getpid(), 15)
# Get stdout from screen session
@test.on
def stdout(log):
print("stdout:", log)
if "!close" in log:
close()
# Pipe input to the screen session
while test.pid:
try:
test.write(input())
except KeyboardInterrupt:
# Capture Ctrl + C to close screen session
close()
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file gnu-screen-0.0.8.tar.gz.
File metadata
- Download URL: gnu-screen-0.0.8.tar.gz
- Upload date:
- Size: 4.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.5.0 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.22.0 requests-toolbelt/0.8.0 tqdm/4.62.3 CPython/3.8.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c8a2243db147398d7bb86adcb647f1556e2567ea2b4e5a7cc5465339ba09f072
|
|
| MD5 |
b7c5f4ee18efc594f714ed922938cdd4
|
|
| BLAKE2b-256 |
746d442a3b74d72391f4851b771ffd445c8949ef2fdf1e699bb4292a6d4499c4
|
File details
Details for the file gnu_screen-0.0.8-py3.8.egg.
File metadata
- Download URL: gnu_screen-0.0.8-py3.8.egg
- Upload date:
- Size: 8.3 kB
- Tags: Egg
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.22.0 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.0 importlib-metadata/4.11.3 keyring/18.0.1 rfc3986/2.0.0 colorama/0.4.3 CPython/3.8.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f32062e2d8a14cce7f6fe593b56081b25223c90fa64150c96c7304b6e3217652
|
|
| MD5 |
9edb5c1d3acb6bf6d859e0c712a8235f
|
|
| BLAKE2b-256 |
54365d4b9dc06f44eed4ea645c9eaa094e102eca3920e6263c07dd66724ff5ed
|
File details
Details for the file gnu_screen-0.0.8-py3-none-any.whl.
File metadata
- Download URL: gnu_screen-0.0.8-py3-none-any.whl
- Upload date:
- Size: 4.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.5.0 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.22.0 requests-toolbelt/0.8.0 tqdm/4.62.3 CPython/3.8.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1825357ca6c3ddd35effbd6c919085000bf288c5ff2a2b15cb5ff8ea5315e82b
|
|
| MD5 |
235df078eb0a075b344e8f85e27fefe8
|
|
| BLAKE2b-256 |
d8335239003886f1b9caaf3949a4063dbf7def23f3db43990c3e4bec61a37a4c
|