Skip to content

Instantly share code, notes, and snippets.

@mmguero
mmguero / python_wc_testing.py
Last active March 25, 2025 15:02
Benchmarking different methods for getting text file line counts with Python (wc batched, wc thread pool, wc, and mmap)
#!/usr/bin/env python3
import os
import sys
import mmap
import subprocess
import time
from multiprocessing import Pool
@mmguero
mmguero / rename-seq.sh
Created November 4, 2024 05:49
rename files sequentially with leading zeroes, keeping extension
num=0; for i in *; do mv "$i" "$(printf '%04d' $num).${i#*.}"; ((num++)); done
@mmguero
mmguero / shake256file.py
Last active October 30, 2024 23:39
shake_256 hash of file
import hashlib
import sys
with open(sys.argv[1], 'rb', buffering=0) as f:
print(hashlib.file_digest(f, 'shake_256').hexdigest(8))
@mmguero
mmguero / podman-macos.md
Last active September 17, 2024 14:34
notes for running Podman on macOS
@mmguero
mmguero / git_add_parent_forks.sh
Created September 5, 2024 14:52
loop through directories and add remotes for parents when they exist
for DIR in *; do pushd "$DIR" >/dev/null 2>&1; export URL="https://api.github.com/repos/$(git remote -v| grep -P "origin.*push" | head -n 1 | cols 2 | sed "s/.*github\.com\///" | sed "s/\.git$//")"; export PARENT="$(curl -fsSL -H "Authorization: token $GITHUB_TOKEN" "$URL" | jq -r '.parent.html_url')"; [[ "$PARENT" != "null" ]] && export FORKNAME="$(echo "$PARENT" | cut -d'/' -f4)" && echo "$FORKNAME" && git remote add "$FORKNAME" "$PARENT"; popd >/dev/null 2>&1; done
@mmguero
mmguero / colorize.md
Created June 24, 2024 03:30
notes for colorizing with stablediffusion in automatic1111
@mmguero
mmguero / extract_audio_lang.sh
Created June 9, 2024 18:10
ffmpeg to extract audio streams from video file according to language with different codecs
for FILE in *.mkv; do \
echo "$FILE"; \
for STREAM in $(ffprobe "$FILE" -loglevel error -show_entries stream=index:stream_tags=language -select_streams a -of compact=p=0:nk=1); do \
export STREAM_ID=$(( $(echo "$STREAM" | cut -d'|' -f1)-1 )); \
export STREAM_LANG="$(echo "$STREAM" | cut -d'|' -f2)"; \
export STREAM_CODEC="$(ffprobe "$FILE" -loglevel error -select_streams a:"$STREAM_ID" -show_entries stream=codec_name -of csv=p=0)"; \
mkdir -p "$STREAM_LANG"; \
ffmpeg -hide_banner -loglevel error -y -i "$FILE" -map 0:a:m:language:"$STREAM_LANG" -vn -sn -c:a copy -map_metadata 0 ./"$STREAM_LANG"/"$(base "$FILE").$STREAM_LANG.$STREAM_CODEC"; \
done; \
done
@mmguero
mmguero / sample intel sources.md
Created April 12, 2024 13:34
sample Public STIX and MISP intel sources for testing Malcolm's Zeek Intelligence Framework integration

Zeek Intelligence Framework for Malcolm

  • /zeek/intel/MISP/.misp_input.txt
misp|https://www.circl.lu/doc/misp/feed-osint/manifest.json
misp|https://www.botvrij.eu/data/feed-osint/manifest.json
misp|https://osint.digitalside.it/Threat-Intel/digitalside-misp-feed/manifest.json
  • /zeek/intel/STIX/.stix_input.txt
@mmguero
mmguero / docker-compose.yml
Created April 8, 2024 13:27
samba-docker-compose.yml using slirp4netns with rootless podman
services:
samba:
image: docker.io/dperson/samba:latest
environment:
TZ: 'America/Denver'
USERID: 0
GROUPID: 0
ports:
- "0.0.0.0:137:137/udp"
- "0.0.0.0:138:138/udp"
@mmguero
mmguero / export.json
Created April 2, 2024 20:58
example of TSVB markdown table for downloading URL
{
"attributes": {
"description": "",
"kibanaSavedObjectMeta": {
"searchSourceJSON": "{\"query\":{\"query\":\"\",\"language\":\"kuery\"},\"filter\":[]}"
},
"title": "markdown URL example",
"uiStateJSON": "{}",
"version": 1,
"visState": "{\"title\":\"markdown URL example\",\"type\":\"metrics\",\"aggs\":[],\"params\":{\"id\":\"61ca57f0-469d-11e7-af02-69e470af7417\",\"type\":\"markdown\",\"series\":[{\"id\":\"61ca57f1-469d-11e7-af02-69e470af7417\",\"color\":\"#54B399\",\"split_mode\":\"terms\",\"split_color_mode\":\"opensearchDashboards\",\"metrics\":[{\"size\":1,\"agg_with\":\"noop\",\"order\":\"desc\",\"id\":\"61ca57f2-469d-11e7-af02-69e470af7417\",\"type\":\"top_hit\",\"field\":\"zeek.files.extracted_uri\",\"order_by\":\"firstPacket\"}],\"separate_axis\":0,\"axis_position\":\"right\",\"formatter\":\"number\",\"chart_type\":\"line\",\"line_width\":1,\"point_size\":1,\"fill\":0.5,\"stacked\":\"none\",\"color_rules\":[{\"value\":0,\"id\":\"1f169c40-f12a-11ee-9364-f9bff3c7f983\"