Scripts divers et variés

g

g est un script shell utilisant fin, grep, awk et fzy pour rechercher du texte dans tous les fichiers du dossier actuel et ses sous-dossiers.

#!/bin/sh

m="$(find . -type f -name \*.$1 -exec grep -nIRs "$*" {} + | fzy |\
   awk 'BEGIN{ FS=":" } { printf("vi +%s %s", $2, $1) } ')"
test -n "$m" && eval "$m"

Exemples

g md cherchera dans les fichiers avec l’extension .md.


dfeed

dfeed utilise dmenu et sfeed pour récupérer les flux rss de ce dernier et les présenter d’un façon agréable pour la selection puis la lecture. Il est ainsi possible de filtrer les items en écrivant.

#!/bin/sh

ftp -o /tmp/sfeed.txt https://feeds.bloguslibrus.fr/feeds.txt

url=$(cat /tmp/sfeed.txt | sort -r | dmenu -l 35 -i | \
                sed -n 's@^.* \([a-zA-Z]*://\)\(.*\)$@\1\2@p')
test -n "${url}" && $BROWSER "${url}"

gotu

De temps à autres je mets à jour l’ensemble des plugins que j’utilise avec neovim. Depuis quelques temps maintenant certains sont sur la branch main et d’autres sont restés avec master. Voici un petit script rapide et tout simple qui permet d’automatiser un peu le truc.

#!/bin/sh

DIR=$HOME/.config/nvim/pack/jbz/start

for f in $(find $DIR -type d -mindepth 1 -maxdepth 1); do
    cd $f
    BRANCH=$(got branch)
    got fetch
    got update -b origin/$BRANCH
    got rebase $BRANCH
    cd ..
done

perl

Je stocke ça ici pour le moment.

Conversion pratique pour les mails. ``` perl -MMIME::QuotedPrint=encodeqp -e ‘print encodeqp join””,<>’

perl -MMIME::QuotedPrint=decodeqp -e ‘print decodeqp join””,<>’ ```

Liens entrants: 2023_journal | 2023_log | home |