alias ISO-datestamps='echo -en "\n Searching for files ...\r"; for i in /dev/sd[a-z] $(du -ahx ~/ 2>&1 | grep -v "\.iso". | grep "\.iso"| cut -f2) $(du -ahx / 2>&1 | grep -v "\.iso". | grep "\.iso"| cut -f2); do string=$(sudo hexdump -Cs 33598 -n16 $i | head -1 | cut -f2 -d"|" | cut -c"1-14"); [ "$string" != "" ] && echo " $string $i" ; done | sort -u' alias cgrep='grep --color=always' alias grep='grep --color=auto' alias date_of_iso='for i in ./*.iso ./*/*.iso /dev/sd[a-z]; do echo " $(sudo hexdump -C -s33598 -n16 $i 2>/dev/null |head -1 | cut -f2 -d"|" | cut -c-14) $i" ; done | sort' alias less='less -g' alias locate='du -ah / 2>&1 | grep ' alias snipe='du -ah ./ 2>&1 | grep ' alias ls='ls --color=auto' alias plot-boot='systemd-analyze plot > /tmp/boot_plot.svg ; x-www-browser file:///tmp/boot_plot.svg &' alias timed='clear; neofetch; systemd-analyze' alias update-aliases='echo -en "\n\tUpdating aliases:\t"; for i in $(alias | grep "alias ". | cut -f1 -d= | cut -f2 -d" "); do echo -en "$i\t"; done ;echo; alias | tee ~/.bash_aliases > /dev/null' alias vi='busybox vi' alias vicr='for i in ./* ; do [ -f $i ] && vi -R "$i" ; done' alias view='vi -R' alias write-out-iso=' iso=" " dev=" " line1="Type or copy-n-paste a file name from above." line2="Type the full path to your USB device. (/dev/sdX)" line3="The block device ${dev} was found and seems Ok to use." lsblk_cmd="lsblk -o PATH,VENDOR,MODEL,SIZE,HOTPLUG,RM" _abort="To abort this now, press Ctrl+C ." _anykey="Hit any key" _coward="Cowardly refusing to write to" _empty="This field cannot be empty" _cancel="to cancel" _continue="to continue" _knownISO="to enter the full path to the ISO." _laststep="This is the final step." _missing="File not found." _mounted="The location is mounted." _noblock="is not a block device." _nochecks="No checks were done to determine this is an ISO image." _noDEV="The location ${dev} does not exist yet, Plug in a USB ?" _noISO="No ISO found in this directory." _notlisted="Check your file name or the location and retry." _passwd="To write to a USB, your password may be required." _re_enter="to Re-Enter the location" _restart1="To start over, Press Ctrl+C," _restart2="then move to a folder with the ISO." _retry="to retry" _search="Searching ${PWD} for ISOs ." _write="Hit ANY key to write the file to" clear echo -en "\n\t${_passwd}\n\t" sudo clear || echo -e "\tFailed password." until [ ! -z "${iso}" ] && [ -e "${iso}" ] && ! (mount | grep -q "${iso}") do clear echo -e "\n ${_search}\n" for i in ./*.iso ./*/*.iso ; do ls $i 2>/dev/null ; done | /bin/grep "\.iso" && echo -en "\n\t${line1}\n\n" || ( echo -en "\n\t${_noISO} \n\n ${_restart1} ${_restart2}\n\n Or ${_anykey} ${_knownISO}" read -n1 -p " " pause && echo ) read -p " Path to ISO = " iso [ -z "${iso}" ] && (echo -en "\n${_empty}." ; read -n1 -p " ${_anykey} ${_continue}. " back) && continue [ ! -e "${iso}" ] && (echo -en "\n${_missing}." ; read -n1 -p " ${_anykey} ${_retry}. " back) && continue ( mount | grep -q "${iso}" ) && (echo -en "\n${_mounted}" ; read -n1 -p " ${_anykey} ${_retry}. " back) && continue done until [ ! -z $dev ] && [ -b $dev ] && ! (mount | grep -q $dev) && [ $dev != "/dev/sda" ] && [ $dev != "/dev/nvme01" ] do clear echo -e "\n\t Now choose the device to write the ISO to." echo -e "\n ISO -----> $iso\n " # echo -e "\n$($lsblk_cmd)\n" ; read -p "$line2 " dev echo -e "\n$($lsblk_cmd)\n" | grep -Ew "(PATH|/dev/sd[a-z])"; echo " "; read -p "$line2 " dev [ -z $dev ] && (echo -en "${_empty}."; read -n1 -p " ${_anykey} ${_continue}. " back) && continue [ ! -e $dev ] && (echo -en "${_noDEV}\n\n"; read -n1 -p " ${_anykey} ${_retry}. " back) && continue [ ! -b $dev ] && (echo -en "${dev} ${_noblock}"; read -n1 -p " ${_anykey} ${_retry}. " back) && continue (mount | grep -q "$dev") && (echo -en "\n${_mounted}"; read -n1 -p " ${_anykey} ${_retry}. " back) && continue [ $dev = "/dev/sda" ] && (echo -en "${_coward} ${dev} ."; read -n1 -p " ${_anykey} ${_retry}. " back) && continue [ $dev = "/dev/nvme01" ] && (echo -en "${_coward} ${dev} ."; read -n1 -p " ${_anykey} ${_retry}. " back) && continue done clear echo -e "\n\t${_laststep} ${_anykey} ${_continue}.\n" echo -e " ISO -----> ${iso} " # echo -e " Device --> ${dev}\n " # echo -e "$($lsblk_cmd ${dev})" | grep -Ew "(PATH|/dev/sd[a-z])" echo -en " Device --> " ($lsblk_cmd ${dev}) | /bin/grep -w ${dev} echo -e "\n\tThe file $iso exists. \n\t(${_nochecks})" echo -e " \tThe block device ${dev} was found and seems Ok to use." echo -en "\n\t${_abort}\n\n\t${_write} $dev. " read -n1 go echo -e "\n Writing the file to $dev ..." sudo dd bs=4M oflag=direct status=progress if="${iso}" of=${dev} sync ${dev}'