bashrc new helpers fn

This commit is contained in:
valere
2025-10-22 09:45:47 +02:00
parent 323af82393
commit 4ab5b3a2f1

View File

@@ -1,8 +1,103 @@
# .linux-env # .linux-env
alias dlmusic='MUSIC_PATH="/mnt/media/music/evilspins/$(date +"%Y")" && mkdir -p $MUSIC_PATH && NOW=$(date +"%Y%m%d%H") && pip install -U yt-dlp && yt-dlp -f bestaudio -x --audio-format mp3 --audio-quality 0 -o $MUSIC_PATH"/"$NOW"__%(title)s__%(artist)s__%(id)s.%(ext)s" $1' dlvideo() {
alias dlvideo='VIDEO_PATH="/mnt/media/video/autre" && cd "$VIDEO_PATH" && pip install -U yt-dlp && yt-dlp -f "bestvideo[ext=mp4]+bestaudio[ext=m4a]/mp4" --merge-output-format mp4 "$@"' VIDEO_PATH="/mnt/media/video/autre"
alias dlfilm='VIDEO_PATH="/mnt/media/video/film" && yt-dlp -o $VIDEO_PATH $1' cd "$VIDEO_PATH" || return
alias dlimage='IMAGE_PATH="/mnt/media/image/screenshit" && wget -P $IMAGE_PATH $1' pip install -U yt-dlp
alias search='find ./ -iname "*$1*"' yt-dlp -f "bestvideo[ext=mp4]+bestaudio[ext=m4a]/mp4" --merge-output-format mp4 "$@"
alias searchinside='grep -rwl "*$1*" ./' }
dlfilm() {
VIDEO_PATH="/mnt/media/video/film"
yt-dlp -o "$VIDEO_PATH/%(title)s.%(ext)s" "$1"
}
dlimage() {
IMAGE_PATH="/mnt/media/image/screenshit"
wget -P "$IMAGE_PATH" "$1"
}
dlcover() {
query_or_file="$1"
manual_url="$2"
MUSIC_DIR="$HOME/media/files/music"
if [ -f "$query_or_file" ]; then
file="$query_or_file"
elif echo "$query_or_file" | grep -q '%(ext)'; then
file="$query_or_file"
else
file=$(find "$MUSIC_DIR" -type f \
\( -iname "*${query_or_file}*.mp3" -o -iname "*${query_or_file}*.m4a" -o -iname "*${query_or_file}*.flac" -o -iname "*${query_or_file}*.wav" -o -iname "*${query_or_file}*.ogg" \) \
| head -n 1)
fi
if [ -z "$file" ]; then
echo "❌ Aucun fichier trouvé pour: $query_or_file"
return 1
fi
base="${file%.*}"
if [ -n "$manual_url" ]; then
curl -s "$manual_url" -o "${base}.jpg"
echo "${base}.jpg saved from manual URL (fichier: $file)"
return
fi
artist_raw=$(echo "$base" | awk -F'__' '{print $2}')
title_raw=$(echo "$base" | awk -F'__' '{for(i=3;i<=NF;i++){printf (i>3?" ":""); printf $i}}')
artist=$(echo "$artist_raw" | tr '_' ' ')
title=$(echo "$title_raw" | tr '_' ' ')
query_enc=$(jq -rn --arg s "$artist $title" '$s|@uri')
it_url="https://itunes.apple.com/search?term=${query_enc}&entity=song&limit=1"
art=$(curl -s "$it_url" | jq -r '.results[0].artworkUrl100')
if [ -n "$art" ] && [ "$art" != "null" ]; then
art_hi=$(echo "$art" | sed 's/100x100bb/1000x1000bb/')
curl -s "$art_hi" -o "${base}.jpg"
echo "${base}.jpg saved from iTunes (fichier: $file)"
return
fi
api_key="5ae5d1212599f96ffa799e21da1b2a7a38274c94bb5ae8ad26ce8d5b08528aaa"
url=$(curl -s "https://serpapi.com/search.json?engine=google&q=${query_enc}&tbm=isch&api_key=${api_key}" \
| jq -r '.images_results[0].original')
if [ -n "$url" ] && [ "$url" != "null" ]; then
curl -s "$url" -o "${base}.jpg"
echo "${base}.jpg saved from Google Images (fichier: $file)"
else
echo "❌ No cover found for $artist - $title (fichier: $file)"
fi
}
dlmusic() {
MUSIC_PATH="/home/root/media/files/music"
mkdir -p "$MUSIC_PATH"
NOW=$(date +"%Y%m%d%H")
URL="$1"
# Récupère le titre
TITLE=$(yt-dlp --get-title "$URL")
# Transforme le titre pour le nom de fichier
SAFE_TITLE="${TITLE// - /__}"
SAFE_TITLE="${SAFE_TITLE// /_}"
TRACK_NAME="$MUSIC_PATH/${NOW}__${SAFE_TITLE}.%(ext)s"
# Téléchargement
yt-dlp -x --audio-format mp3 -o $TRACK_NAME "$URL"
dlcover $TRACK_NAME
}
search() {
find ./ -iname "*$1*"
}
searchinside() {
grep -rwl "$1" ./
}
# .linux-env # .linux-env