ScriptsPublicos/README.md

371 lines
9.0 KiB
Markdown
Raw Normal View History

2022-04-23 00:59:43 -04:00
# Scripts Publicos
Selección de scripts de autoria propia
- [Exploracion de Logs](#buscalog)
- [Funciones Git](#funciones-git)
- [Funciones Python](#funciones-python)
- [Consola de Python a color](#interprete-a-color)
2022-04-23 00:59:43 -04:00
- [Otros](#otros)
- [Estadisticas covid Chile](#covstats)
- [Mpv Playlist](#mpvplaylist)
2022-05-24 15:38:00 -04:00
- [Metronomo (lite)](#metronomo)
- [Otras funciones](#otras-funciones)
2022-05-24 15:38:00 -04:00
- [Metronomo](#metronomo)
2022-04-23 00:59:43 -04:00
- [Lol laucher y debug](#rito-pls)
2022-04-28 13:19:47 -04:00
> **NOTA:** Funciones ejecutadas con ***alias***
> - ej: `alias mi_alias='/ruta/a/script funcion <arg(s)>'`
2022-04-23 00:59:43 -04:00
----
# Buscalog
2022-04-28 13:19:47 -04:00
Script a color, para explorar logs en `/var/log/` y directorios agregados en `~/.config/custom_log_dirs`.
2022-04-23 00:59:43 -04:00
ej `custom_log_dirs`:
```txt
/ruta/a/directorio
/ruta/a/otro/directorio
/ruta/a otro/directorio con espacios
2022-04-23 00:59:43 -04:00
```
> - Los nombres de directorios terminan en `\n`
2022-04-23 00:59:43 -04:00
2022-04-28 13:19:47 -04:00
Lista los log disponibles en los directorios mencionados.
> - archivos con extension `.log`
> - archivos con permiso de lectura
2022-04-23 00:59:43 -04:00
`./buscalog.sh listLog`
```txt
Selección de Logs :
-------------------
2022-04-28 13:19:47 -04:00
0) log_a
1) log_b
2) log_c
3) log_cd
4) custom/dir/log_a
5) custom/dir/log_b
6) otro/custom/dir/log_c
2022-04-23 00:59:43 -04:00
s) Salir
Ver log:
```
Muestra el contenido del log 'seleccionado' en el menu utilizando **bat**, **bat-cat** o **cat**.
```txt
.... .... ...
.... contenido del log
.... .... ...
```
Pie de página con información del log actual, patrón de búsqueda o búsqueda inversa y
cantidad de resultados o entradas del log.
```txt
2022-04-28 13:19:47 -04:00
| LOG: /var/log/milog.log | BUSQUEDA: \s404\s | ECONTRADOS: 11 |
2022-04-23 00:59:43 -04:00
```
Opciones en vista del log
| Opción | Detalle |
| - | - |
| **`v`** volver | Vuelve a la lista principal de logs
| **`r`** recargar | Actualiza el log en vista
| **`b`** buscar | Búsqueda en el log (escapar caracteres de escape ej. `\\s`)
| **`B`** busqueda inversa | Busqueda inversa (escapar caracteres de escape)
| **`s`** salir | Termina el programa
```txt
| v)olver | r)ecargar | b)uscar | B)usqueda inversa | s)alir |
Opción:
```
Script: [buscalog.sh](./buscalog.sh)
----
# Funciones Git
Script a color con funciones git y creador de *READMES* en sub-directorios.
## gitUser()
Inicia repositorio como usuario especificado en `~/.config/.gitidents`
ej. `.gitidents`
```txt
UsuarioGit1 user1@git.org keyUser1
UsuarioGit2 user2@git.org keyUser2
UsuarioGit3 user3@git.org keyUser3
UsuarioGit4 user4@git.org keyUser4
```
> - llaves ssh en `~/.ssh/keys/`
2022-04-23 00:59:43 -04:00
### Listar usuarios agregados
`./gitfun.sh gitUser`
```txt
Debes ingresar un usuario válido!
Identidades en ~/.config/.gitidents :
-> UsuarioGit1
-> UsuarioGit2
-> UsuarioGit3
-> UsuarioGit4
m) manual
╮(︶▽︶)╭
```
### Iniciar repositorio como
`./gitfun.sh gitUser UsuarioGit3`
```txt
( ̄▽ ̄) Iniciando repositorio de UsuarioGit3
hint: Using 'master' as the name for the initial branch...
hint: ... ...
hint: ... ...
hint: git branch -m <name>
Initialized empty Git repository in /tmp/testi/.git/
```
### Iniciar repo manualmente
Solicita entrada de nombre, email y llave ssh.
`.gitfun gitUser m` o `.gitfun gitUser manual`
```txt
Nombre : Usuario Manual
Correo : mail@user.git
SSH key: llaveSSH
Usuario: Usuario Manual Correo: mail@user.git Llave: llaveSSH
Iniciar repositorio con estos valores? (s/n/q):
```
2022-04-23 01:42:39 -04:00
## crea_readmes()
Invoca `touch README.md` en los directorios a un sub-nivel del actual.
ej. nombres de directorios: `mi_dir/`, `mi dir con espacios/`.
ej. Directorios
```txt
📂️ .
├── 📂️ SubDir1
│ ├── 📂️ deepDir1
│ └── 📂️ deepDir2
└── 📂️ Sub Dir 2
├── 📂️ deepDir1
└── 📂️ deepDir2
2022-04-23 01:42:39 -04:00
```
`./gitfun.sh crea_readmes`
```txt
📂️ .
├── 📂️ SubDir1
│ ├── 📂️ deepDir1
│ ├── 📂️ deepDir2
│ └── 📃️ README.md
└── 📂️ Sub Dir 2
├── 📂️ deepDir1
├── 📂️ deepDir2
└── 📃️ README.md
2022-04-23 01:42:39 -04:00
```
2022-04-23 00:59:43 -04:00
Script: [gitfun.sh](./gitfun.sh)
----
# Funciones Python
## pyVirtEnvSel()
Lista, crea entornos virtuales, copia al portapapeles la orden para activarlo.
### Lista entornos virtuales
Del directorio **`PyVirtEnvDir`**, especificado en el script.
`./pythonfun.sh pyVirtEnvSel`
```txt
Entornos Virtuales Python:
0) virtEnv
1) virtEnv1
2) virtEnv2
3) virtEnv3
c) Crear
q) Salir
Ingresa una opción. ->
```
### Crea entorno virtual
ej. ***entornoVirtual5***
```
Crear nuevo entorno
Nombre del entorno -> entornoVirtual5
Entorno virtual python: [entornoVirtual5] Creado 🐍️
```
### Copia al portapapeles el entorno seleccionado
```txt
Orden copiada en portapapeles:
--------------------------------------------------------------------
source /ruta/a/directorio/virtual_envs/entornoVirtual5/bin/activate
--------------------------------------------------------------------
```
Otras funciones:
- \_pip()
Uso del modulo **pip_search** como `pip search <busqueda>`
- pyDebug()
*Debugear* archivo `./pythonfun pyDebug <archivo.py>`
- pyMarkdown()
Markdown para terminal `./pythonfun pyMarkdown <archivo.md>`
- pyMicroCalc()
Micro calculadora, ejs. `./pythonfun pyCalc 1+1`, `./pythonfun pyCalc "(1+1)/2"`
Script: [pythonfun.sh](./pythonfun.sh)
### Interprete a color
2022-05-21 23:00:52 -04:00
Color en la consola de python con módulo **rich**, mas inspector. [pyRichRepl.py](./pyRichRepl.py)
2022-04-23 00:59:43 -04:00
----
# Otros
2022-05-20 21:03:56 -04:00
## covStats()
2022-04-23 00:59:43 -04:00
Estadisticas covid Chile
`./otros.sh covStats`
```txt
Estadisticas COVID Chile 🇨🇱️
============================
Muertes totales : 0.29 %
Muertes contagio: 1.62 %
----------------------------
Contagios : 3,541,792
Activos : 125,059
Recuperados : 3,359,382
Muertes : 57,351
----------------------------
```
2022-05-20 21:03:56 -04:00
## MpvPlaylist()
Función para administrar una 'playlist' para ser usada con [mpv](https://mpv.io)
> archivo: `~/.cache/.playlist`
**Uso**
2022-05-20 21:03:56 -04:00
ej. `alias mpvp='/ruta/otros.sh mpvPlaylist'`
| Orden | Detalle |
| - | - |
|`mpvp` | Modo interactivo |
|`mpvp -h` | Mostrar ayuda |
|`mpvp https://link.video`| Agregar el link a *playlist* |
|`mpvp -r` | Reproducir *playlist* |
2022-05-20 21:03:56 -04:00
|`mpvp -s` | Reproducir *playlist* y apagar PC |
**Modo interactivo**
```
Playlist Manager
----------------
1) Ver Lista
2) Añadir link(s)
3) Reproducir lista
4) Reproducir y Apagar PC
5) Borrar lista
6) Editar
s) Salir
Elige una opción :
```
| Opción | Detalle |
| - | - |
|`1`| Muestra el contenido del *playlist* |
|`2`| Agrega uno, o mas links (v) volver, (s) salir |
|`3`| Reproduce lista |
|`4`| Reproduce y apaga el equipo |
|`5`| Borra la lista |
|`6`| Editar lista (neovim) |
|`s`| Salir |
2022-05-24 15:38:00 -04:00
## Metronomo lite
2022-05-20 21:03:56 -04:00
**Uso**
ej. `alias metro='/ruta/otros.sh metronomo'`
Por defecto inicia a **80 bpm**
```sh
$ metro
Metronomo a: 80 bpm
[Salir] <Ctrl>+<C>
```
O según argumento, ej. **120 bpm**
```sh
$ metro 120
Metronomo a: 120 bpm
[Salir] <Ctrl>+<C>
```
## Otras Funciones
| Funcion | Explicación |
| - | - |
|`Caldera()` | Lanza xfce terminal y corre el script [caldera.py](https://gitea.kickto.net/SyDeVoS/Caldera-ino/src/branch/master/scripts#python)|
|`Termo()` | Lanza xfce terminal y corre el script [caldera.sh](https://gitea.kickto.net/SyDeVoS/Caldera-ino/src/branch/master/scripts#bash)|
|`yutu()` | Busca video pasado como argumento, instancia [mpv](https://mpv.io/) con el resultado <br> ej. `./otros.sh yutu <video a buscar>`|
|`Neo()` | 'Envoltorio' para neofetch <br> `./otros.sh Neo -h` lista logos disponibles <br>`./otros.sh Neo <logo>` ejecuta neofetch con el logo especificado.|
2022-08-10 01:58:04 -04:00
|`ver_imgs()`| Visualizar imagenes en terminal (kitty) del directorio especificado o actual.|
2022-04-23 00:59:43 -04:00
Script [otros.sh](./otros.sh)
----
2022-05-24 15:38:00 -04:00
## Metronomo
> alias `alias metro=/ruta/metronomo.sh metro`
`metro -h`
```
Uso: metronomo [OPCS]
metro -b 80 -c '1 0 0 0'
metro --frecs '640 790'
-b, --bpm <BPM> - Golpes por minuto.
-c, --compas <COMPAS> - Entre comillas, '1 0 0 1 0', separados por espacios.
-s, --sub - Activa sonido de las subdivisiones.
-f, --frecs <FRECs> - Cambia la frecuencia de sonidos del metronomo (0 y 1).
-v, --version - Muestra la fecha de la versión.
-h, --help - Muestra información de ayuda.
Sonidos metronomo:
- '/home/user/.cache/metro0.wav'.
- '/home/user/.cache/metro1.wav'.
```
Ejemplo:
- 40 bpm.
- Pulsos a frecuencias 0=320, 1=560.
- Compás 6/8 con acento en 1er, 4to y 5to pulso.
- Con sonido en subdivisiones (ceros).
```
metro -b 40 -f '320 560' -c '1 0 0 1 1 0' -s
```
Script: [metronomo.sh](./metronomo.sh)
----
2022-05-20 21:03:56 -04:00
## Rito pls
2022-04-23 00:59:43 -04:00
Lanza instancia de [kitty](https://sw.kovidgoyal.net/kitty/) terminal, con 3 splits (ventanas según creador).
Layout tall:
- Ventana 1: `bpytop`
- Ventana 2: `tail -f debug.log`
- Ventana 3: Lanza league of legends, muestra información del proceso
Utilidad para monitorear procesos con bpytop, y rastreo de informes/errores en logs de Lutris y Lol.
[ritopls](./ritopls): `kitty --start-as maximized --session ritopls &`