un du un peu interactif grâce à fzy - retour accueil
git clone git://bebou.netlib.re/fdu
Log | Files | Refs | README |
commit debd96591d48e164b1771f87265810408f5d7492 parent 93dfd2c7829ffd49a9d756dc7038fa230b9e1b19 Auteurice: Arthur Pons <arthur.pons@unistra.fr> Date: Sun, 27 Oct 2024 21:59:12 +0100 On track fdu.sh plutôt que fdu, --help plus utile Diffstat:
M | .gitignore | | | 1 | + |
D | fdu | | | 42 | ------------------------------------------ |
M | fdu.sh | | | 17 | ++++++++++++++--- |
3 files changed, 15 insertions(+), 45 deletions(-)
diff --git a/.gitignore b/.gitignore @@ -1 +1,2 @@ .*.sw? +fdu diff --git a/fdu b/fdu @@ -1,42 +0,0 @@ -#! /bin/sh - -VERSION="0.2" - -help() <<\% cat -Un du un peu interactif pour un semblant de qdirstat (ou ncdu etc) - -Usage : fdu [chemin] - -Le chemin par défaut est le repertoire courant - -Naviguer avec les flèches -Entrée pour selectionner un dossier ou un fichier -Pour le moment rien n'est fait quand on sélection un fichier -% - -tmpd=$(mktemp -d) -trap "rm -rf $tmpd;exit 0" INT QUIT EXIT - -case "${1}" -in ( -h | --help ) help ; exit -;; ( -v | --version ) echo "clidirstats $VERSION" ; exit -;; (*) - cur=$(cd "${1:-.}" && pwd) - while [ "$cur" != "quit" -a -d "$cur" ];do - tmpf=$(printf "%s" "$cur" | tr '/' '-') - if [ -f "$tmpd/$tmpf" ]; then - list=$(cat "$tmpd/$tmpf") - else - list=$(du -a -d 1 -h "$cur" | sort -hr | sed -E "s,$cur$,total,") - printf "%s" "$list" > $tmpd/$tmpf - fi - cur=$(printf "quit\nprev %s\n%s" "${cur%/*}" "$list" | fzy -l 20 | cut -f2) - done - - if [ ! -e "$cur" ];then - printf "%s" "Selected item not a file, exiting"; exit 1 - else - printf "%s is a file, what do you want to do ?\n" "$cur" - fi -esac - diff --git a/fdu.sh b/fdu.sh @@ -9,9 +9,20 @@ Usage : fdu [chemin] Le chemin par défaut est le repertoire courant -Naviguer avec les flèches -Entrée pour selectionner un dossier ou un fichier -Pour le moment rien n'est fait quand on sélection un fichier +Naviguez dans la liste avec les flèches +Sélectionnez un élément avec la touche entrée +Si un dossier est sélectionné fdu analysera le contenu du dossier +Si un fichier est sélectionné il terminera (pour le moment) + +Exemples : + + $ fdu + +analyser le dossier courant + + $ fdu ~ + +analyser votre home % tmpd=$(mktemp -d)