Skip to content

Instantly share code, notes, and snippets.

View Esl1h's full-sized avatar
🌎
Quem não tem cUrl, caça com get.

Esli Silva Esl1h

🌎
Quem não tem cUrl, caça com get.
View GitHub Profile
@Esl1h
Esl1h / LBs-TGs.sh
Created April 25, 2023 17:12
Search AWS over load balancers and target groups to find Load balancers without Target groups and find TGs without Registered targets
#!/bin/bash
AWS_REGION="xx-xxxx-1"
AWS_OUTPUT="json"
AWS_PROFILE="xxx"
# 01- ELBs without Target Groups
load_balancers=$(aws elbv2 describe-load-balancers --query "LoadBalancers[*].LoadBalancerArn" --output text --profile $AWS_PROFILE)
for lb in $load_balancers; do
#printf "$lb"'%b\n'
@Esl1h
Esl1h / s3url.py
Created April 11, 2023 21:36
Generate a URL from S3 objects to download (A bucket to storage logs case example)
############################################################################################################
## This script run with python3 and is able to generate pre-signed URLs from files (objects) on a s3. ##
## It is possible with it to generate URLs of several days within the same month and year for several ##
## instances without the need to provide access to the bucket for the user ##
############################################################################################################
import boto3
from colorama import Fore, Style
APP = ''

Keybase proof

I hereby claim:

  • I am esl1h on github.
  • I am esl1h (https://keybase.io/esl1h) on keybase.
  • I have a public key ASACW80CQpL8rhWJiN7fY1Rjy90BWGoH6F7nRnkY0vZ9rQo

To claim this, I am signing this object:

@Esl1h
Esl1h / asciidoc-syntax-quick-reference.adoc
Created September 19, 2022 15:43 — forked from mojavelinux/asciidoc-syntax-quick-reference.adoc
AsciiDoc Syntax Quick Reference (sample document)

AsciiDoc Syntax Quick Reference

@Esl1h
Esl1h / bash_parse_example.sh
Last active September 19, 2023 11:12
How to parse and use yaml file in bash/shell script.
#!/bin/bash
function parse_yaml {
local prefix=$2
local s='[[:space:]]*' w='[a-zA-Z0-9_]*' fs=$(echo @|tr @ '\034')
sed -ne "s|^\($s\):|\1|" \
-e "s|^\($s\)\($w\)$s:$s[\"']\(.*\)[\"']$s\$|\1$fs\2$fs\3|p" \
-e "s|^\($s\)\($w\)$s:$s\(.*\)$s\$|\1$fs\2$fs\3|p" $1 |
awk -F$fs '{
indent = length($1)/2;
@Esl1h
Esl1h / xcopy.bat
Created September 6, 2021 14:16
simple batch script to backup folders and files in Windows hosts to another drive or network
@echo
set source=C:\
set destination=\\servername\d$
set command=xcopy /c /d /e /f /g /h /i /r /s /y
set log=D:\backup_log_file.txt
For /f "tokens=2-4 delims=/ " %%a in ('date /t') do (set mydate=%%c-%%a-%%b)
For /f "tokens=1-2 delims=/:" %%a in ('time /t') do (set mytime=%%a%%b)
echo # # # Starting files %mydate% at %mytime% >> %log%
@Esl1h
Esl1h / script.sh
Created February 1, 2021 02:13
Solução simples para o desafio: extraia 2 resultados a partir de um arquivo de log - quantidade de logs e quantidade de solicitações
#!/bin/bash
: '
DESAFIO:
Dado um arquivo de log do apache (acess.log) com diversas linhas semelhantes a abaixo:
172.19.0.100 - - [18/Feb/2020:22:35:10 +0000] "GET /index HTTP/1.1" 200 31067 "-" "Mozilla/5.0 (compatible; YandexBot/3.0; +http://yandex.com/bots)" "172.19.0.2"
172.19.0.103 - - [15/Feb/2020:22:32:02 +0000] "GET /index HTTP/1.1" 200 14034 "-" "Mozilla/5.0 (compatible; SemrushBot/6~bl; +http://www.semrush.com/bot.html)" "172.19.0.4"
172.19.0.104 - - [16/Feb/2020:22:31:32 +0000] "GET /site HTTP/1.1" 200 36565 "https://command-not-found.com/curl" "Mozilla/5.0+(compatible; UptimeRobot/2.0; http://www.uptimerobot.com/)" "172.19.0.3"
172.19.0.105 - - [16/Feb/2020:22:30:10 +0000] "GET /credits HTTP/1.1" 200 31067 "-" "Mozilla/5.0 (compatible; YandexBot/3.0; +http://yandex.com/bots)" "172.19.0.2"
@Esl1h
Esl1h / ansible.cfg
Created September 21, 2020 20:21
Ansible config simple example with mitogen and SSH control session. Configuração do ansible com o mitogen e controle de sessão do SSH
[defaults]
inventory = ./conf/host
local_tmp = ./.tmp
roles_path = ./roles
remote_user = ec2-user
internal_poll_interval = 0.001
interpreter_python = /usr/bin/python
forks = 20
callback_whitelist = profile_tasks
log_path = ./logs/ansible.log
@Esl1h
Esl1h / ssh_config
Created September 21, 2020 20:07
configuração do SSH: Usar tunel SSH sempre que conectar nos hosts do domínio especifico. Always when connecting to hosts in this domain, SSH will use the Tunel
#
Host *
# ForwardAgent no
# ForwardX11 no
# ForwardX11Trusted yes
# PasswordAuthentication yes
# HostbasedAuthentication no
# GSSAPIAuthentication no
# GSSAPIDelegateCredentials no
@Esl1h
Esl1h / topics.sh
Created September 21, 2020 19:55
List kafka topics and partitions. Lista as partições dos tópicos no kafka.
#!/bin/sh
path="/opt/kafka_2.12-2.2.2/bin"
$path/kafka-topics.sh --zookeeper zookeeper.intranet:2181 --list | grep -v "__consumer_offsets" > topic.txt
cat topic.txt | while read line
do
partitions=`$path/kafka-topics.sh --describe --zookeeper zookeeper.intranet:2181 --topic $line | grep PartitionCount | awk '{ print $1,$2 }'`
echo $partitions
done