Skip to main content

upload_key.sh

Jan 12, 2023LeifMessinger
Loading...

More Shell Posts

diskRipper.sh

Apr 21, 2021LeifMessinger

0 likes • 6 views

#diskRipper.sh by Leif Messinger
#For use on debian, where your cds aren't immediately mounted
wall "CD inserted boss"
set -x #echo on
cdDrivePath=$(ls -l /dev/cdrom | awk '{print $NF}')
#CD could have no label, so that's why I need awk
cdLabel=$(lsblk -n "/dev/$cdDrivePath" -o label)
if [[ ! -z "$cdLabel" ]]; then #CD has label
folderName=$cdLabel
echo "The cd label is ${folderName}"
if mkdir ./cds/"${folderName}"; then #Folder didn't exist before
sudo mount /dev/cdrom ./.cdmountpoint
sudo cp -r ./.cdmountpoint/* "./cds/${folderName}"
sudo chmod -R 777 "./cds/${folderName}"
sudo umount ./.cdmountpoint
eject
wall "CD done and ejecting"
else
wall "Already read that cd, skipped"
fi
else
wall "CD had no label, skipped"
fi

Bash Basics

Nov 19, 2022CodeCatch

0 likes • 1 view

name="John"
echo ${name}
echo ${name/J/j} #=> "john" (substitution)
echo ${name:0:2} #=> "Jo" (slicing)
echo ${name::2} #=> "Jo" (slicing)
echo ${name::-1} #=> "Joh" (slicing)
echo ${name:(-1)} #=> "n" (slicing from right)
echo ${name:(-2):1} #=> "h" (slicing from right)
echo ${food:-Cake} #=> $food or "Cake"

Update Prefixed Dependencies

Oct 9, 2023C S

0 likes • 114 views

# Update all npm packages under the scope defined by the PREFIX variable ("foo").
PREFIX="foo"; npm ls | grep "$PREFIX" | awk -F/ '{print $NF}' | sed 's/@.*//' | xargs -I package npm update @"$PREFIX"/package

Untitled

May 20, 2024AustinLeath

0 likes • 12 views

#!/bin/sh
BAT_LOW=15
BAT_CRITICAL=5
if [ "$1" = "--help" ]
then
printf "
Usage:
\tbattery_check.sh warning%% hibernate%%
Description:
\tA script for notifying the user via dunst and logging when
\tthe battery is low and the system is going to hibernate.
\tCan be supplied arguments for the battery low warning and
\thibernation percentage thresholds as the first and second arguments.
\t Default behavior is to warn at 15% and hibernate at 5%."
exit
fi
if [[ -n "$1" && -n "$2" && $1 -gt $2 ]]
then
BAT_LOW=$1
BAT_CRITICAL=$2
fi
acpi -b | awk -F'[,:%]' '{print $2, $3}' | {
read -r status capacity
echo Low threshold: $BAT_LOW, Hibernate threshold: $BAT_CRITICAL
echo Status: $status, Capacity: $capacity
if [ "$status" = Discharging -a "$capacity" -le $BAT_CRITICAL ]; then
echo Battery critical threshold.
dunstify -u critical "Critical battery threshold, hibernating..."
logger "Critical battery threshold, hibernating..."
sleep .5
systemctl hibernate
exit
fi
if [ "$status" = Discharging -a "$capacity" -le $BAT_LOW ]; then
echo Battery low threshold.
dunstify -u critical 'Battery low! System will hibernate at 5%.'
logger 'Battery low! System will hibernate at 5%.'
sleep .5
light -S 15
exit
fi
}

codecatch.sh

Nov 14, 2021LeifMessinger

0 likes • 0 views

#!/bin/bash
#Takes all the c and h files in the current directory and prints them
#Yup, it's that easy
for file in *.h *.hpp *.c *.cpp; do
#If it exists
if [ -f "$file" ]; then
echo "//===============$file==============="
cat $file
fi
done

NPM Workspaces Commands

Aug 16, 2023C S

0 likes • 6 views

# Run "test" script on all packages
npm run test --workspaces
# Tip - this also works:
npm run test -ws
----------------------------------------------------
# Runs "test" only on package-a
npm run test --workspace package-a
# Tip - this also works:
npm run test -w package-a
----------------------------------------------------
# Install `lodash` on `package-a`
npm install lodash --workspace package-a
# Install `tap` on `package-b` as a dev dependency
npm install tap --workspace package-b --save-dev
# Install `package-a` on `package-b`
npm install package-a --workspace package-b
# Install `eslint` in all packages
npm install eslint --workspaces