Translate

Translate to EnglishÜbersetzen Sie zum Deutsch/GermanΜεταφράστε στα ελληνικά/GreekПереведите к русскому/RussianOversetter til Norsk/NorwegianÖversätta till Svensk/Swedishहिन्दी अनुवाद करने के लिए/Hindi
Tradueix al català/CatalanTulkot uz latviešu/LatvianPreložiť do slovenčiny/SlovakVertaal aan het Nederlands/Dutchترجمة الى العربية/ArabicTraduzca al Español/SpanishTraduisez au Français/French
Traduca ad Italiano/ItalianTraduza ao Português/Portuguese日本語に翻訳しなさい /Japanese한국어에게 번역하십시오/Korean中文翻译/Chinese Simplified中文翻译/Chinese TraditionalПереклад на українську/Ukrainian
Image of RHCE Red Hat Certified Engineer Linux Study Guide (Exam RH302) (Certification Press)
Image of Modern Operating Systems (3rd Edition)
Image of Android Wireless Application Development
Image of Beginning Google Maps API 3

Linux Shell Script to Download YouTube Videos

Here is a bash shell script which downloads a YouTube video and plays it using GNOME’s Totem movie player which is based on the GStreamer open source multimedia framework.


#!/bin/bash
#
#  Author: Finnbarr P. Murphy
#    Date: July 27th, 2010
#
#  Copyright (c) Finnbarr P. Murphy 2010
#

echo  -n "Enter the YouTube ID to copy: "
read ID
[[ -z $ID ]] && exit 1

TMP=/var/tmp/yt.$$
#QUIET="-q"
QUIET="--progress=bar"

WGET=/usr/bin/wget
SED=/bin/sed
TR=/usr/bin/tr

$WGET ${QUIET} -O ${TMP} "http://www.youtube.com/watch?v=${ID}"
[[ $? > 0 ]] && exit 2

VIDEOFILE=$($SED -n "/fmt_url_map/{s/[\'\"\|]/\n/g;p}" ${TMP} | \
            $SED -n '/^fmt_url_map/,/videoplayback/p' | \
            $SED -e :a -e '$q;N;5,$D;ba' | $TR -d '\n' | \
            $SED -e 's/\(.*\),\(.\)\{1,3\}/\1/')

rm -f $TMP
echo -n "Downloading video ...."

# download video to file named "downfile". Change as necessary
$WGET ${QUIET} -O downfile "${VIDEOFILE}"
[[ $? > 0 ]] &&  {
   echo "ERROR: Download failed"
   exit 3
}
echo " Done"

# play the video using totem. Change as necessary
totem downfile

exit 0

Enjoy!
 

3 Responses to “Linux Shell Script to Download YouTube Videos”

  1. will says:

    wow thank you!! finally a script that works after the YouTube change!! If you guys had a donate button I would donate. Thanks again.

  2. ivanp84 says:

    Unfortunately, script can’t download YT clip anymore… YT probably has changed since July 2010…

  3. There’s a new script for linux to search and watch youtube’s video on linux shell, called YouShell.

    http://code.google.com/p/youshell/