• Lvxferre
    link
    fedilink
    1118 days ago

    A script full of functions that I perform often, like:

    • Probe every 5min for internet connection. Play Black Sabbath when there is. (My internet goes down often.)
    • Create individual tarballs/zips/rars for each subdir.
    • Extract all tarballs/zips/rars from a dir. (It detects the format on its own)
    • Extract all files of a DwarFS file into a dir.
    • Re-encode all vids from a dir.
    • Delete all thumbnail pictures from my user.
    • Find and remove all desktop.ini and thumbs.db files in a dir, recursively.

    My .bashrc then sources that script, so to use those functions I simply open a terminal. And if I ever need to delete my .bashrc and recreate it anew, they’re safely stored in my scripts directory.

    • @[email protected]
      link
      fedilink
      316 days ago

      If you’re comfortable running Docker, check out net probe. It comes with an all in one logging/graphing stack that will probe your internet quality based on lag and packet loss. Default configs is good enough to get you going and you can tinker to your heart’s content from there. Probably won’t play Black Sabbath automatically though unfortunately!

    • dave@hal9000
      link
      fedilink
      318 days ago

      The black Sabbath for Internet connection is hilarious. Did you get that from the Bitcoin mining trigger bit on Silicon Valley?

      • Lvxferre
        link
        fedilink
        718 days ago

        No, that’s a coincidence. I wanted something that: started loud, was easy to recognise, I don’t mind hearing, and my neighbours don’t listen to. Wicked World it is.

        Here’s the code by the way, with the echo translated:

        lvxInternetCheck () {
        	while [[ $(ping -c 5 8.8.8.8 | grep -o "100% packet loss") == "100% packet loss" ]]
        		do echo "No internet at $(date +%R)." ; sleep 300
        		done
        	echo "Internet came back at $(date +%R)."
        	cvlc /[redacted]/08\ -\ Wicked\ World.mp3 
        	}
        

        It’s dirty but it works. (My functions start with “lvx” to avoid the tiny chance that they might clash with system functions.)