made it so i just click file and paste YouTube url
Linux is amazing
#! /usr/bin/bash
echo "Enter a url"
read a
yt-dlp -x $a
made it so i just click file and paste YouTube url
Linux is amazing
#! /usr/bin/bash
echo "Enter a url"
read a
yt-dlp -x $a
That’s great! Here’s a few tips to take it a bit further; the world is your oyster!
Open your .bashrc file (e.g. /home/yourusername/.bashrc) and add the following:
alias get="/path/to/your/bash/file"Now open a terminal and type get, and it’ll launch the script. No clicking needed, it’ll run anytime from any terminal!
And if you do use the alias then you can use another refinement, you can drop the echo: instead of $a, you can use $1 and remove the echo & read as you no longer need them:
#! /usr/bin/bash yt-dlp -x $1Now for example you can type in a terminal:
get http://url.to.video/And yt-dlp will do it’s stuff. $1 passes the first parameter after starting the script as a variable to it.
You can use the keyboard shortcut Control+shift+v to paste a URL into the terminal, no mouse needed; just remember to add a space after typing get
What does your ~/.bashrc look like? My last change was modifying a
playlistcommandspoiler: I explain my last change to my ~/.bashrc file
or
or just from any directory with files
And then takes all the videos found at the url or at the path (including within folders), adds them to a playlist, shuffles them, and plays them from mpv.
playlist() { param="" # If the first parameter has a length more than 1 character if [ ${#1} -gt 1 ]; then param="${@}" else param="." fi screen mpv $param --shuffle --ytdl-raw-options-add=cookies-from-browser=firefox --loop-playlist=inf --no-keepaspect-window --no-auto-window-resize }other functions and aliases in my ~/.bashrc
alias code=codium alias files=nautilus alias explorer=nautilus alias rust="/path/to/.cargo/bin/evcxr" alias sniffnet="export ICED_BACKEND=tiny-skia; /path/to/.cargo/bin/sniffnet" alias http-server='/path/to/.cargo/bin/miniserve' alias iphone='uxplay' alias airplay='uxplay' alias watch='screen mpv --ytdl-raw-options-add=remote-components=ejs:github --ytdl-raw-options-add=cookies-from-browser=firefox --no-keepaspect-window ' alias twitch='watch' alias timeshift-launcher="pkexec env WAYLAND_DISPLAY='$WAYLAND_DISPLAY' XDG_RUNTIME_DIR='$XDG_RUNTIME_DIR' /usr/bin/timeshift-launcher" alias update="sudo apt update && sudo apt upgrade -y && sudo flatpak update -y && sudo snap refresh" alias resize="path/to/resize/videos/resize.sh" playlist() { param="" # If the first parameter has a length more than 1 character if [ ${#1} -gt 1 ]; then param="${@}" else param="." fi screen mpv $param --shuffle --ytdl-raw-options-add=cookies-from-browser=firefox --loop-playlist=inf --no-keepaspect-window --no-auto-window-resize } gif() { ffmpeg -i $1 -f yuv4mpegpipe - | gifski -o $2 ${@:3} -;}