summaryrefslogtreecommitdiff
path: root/title.bash
blob: 95a9ca93bac7dccf823d440a43b15f323268d71e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#!/bin/bash

# v0.1  : basic title extract
# v0.2  : added help arguments
# v0.3  : added version arguments
# v0.3.1: change !title to title in version info
# v0.4  : added case insensitive matching
# v0.5  : ignore SSL certificate errors
# v0.6  : switch to curl, add maximum filesize and time limits

read url

if [ "$url" == "-h" ] || [ "$url" == "--help" ]
then
  echo "Usage: '!title <url>' where <url> is an http:// or https:// URL"
elif [ "$url" == "-v" ] || [ "$url" == "--version" ]
then
  echo "title version 0.6"
else
  curl --insecure --silent --max-filesize 1048576 --max-time 10 "$url" | sed -n -e 'H;${x;s!.*<head[^>]*>\(.*\)</head>.*!\1!I;tnext};b;:next;s!.*<title>\(.*\)</title>.*!\1!pI'
fi