Код, написанный быстро, часто ломается медленно. (автор не известен)

Генерация Google Sitemap в командной строке — BASH


Генерация Google Sitemap в командной строке - BASH

Мы нашли простой инструмент командной строки для генерации Google Sitemaps, но он не нравится нам. Вот мы решили написать простой генератор карты сайта при помощи скрипта командной строки Bash. Этот скрипт Bash использует wget, так что он должен быть установлен.

#!/bin/sh

if [ $# -ne 1 ];
    then echo "usage: $0 <http://www.example.ru>" && exit 1
fi

rm -rf sitemap.xml; rm -rf spider.log;
wget --spider --recursive --no-verbose 
	--output-file=spider.log 
    --reject=.rss,.gif,.png,.jpg,.css,.js,.txt -e robots=off $1;
urls=(`sed -n 's/.\+ URL:\([^ ]\+\) .\+/\1/p' spider.log`);

echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>
<urlset
      xmlns=\"http://www.sitemaps.org/schemas/sitemap/0.9\"
      xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"
      xsi:schemaLocation=\"http://www.sitemaps.org/schemas/sitemap/0.9
            http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd\">" > sitemap.xml;

for url in ${urls[*]}
do
echo "<url>
  <loc>$url</loc>
  <changefreq>daily</changefreq>
</url>" >> sitemap.xml;
done      
        
echo "</urlset>"; >> sitemap.xml;

 

Спасибо за прочтение! Если у вас есть идеи, напишите их в комментариях ниже.

Редактор: AndreyEx

Если статья понравилась, поделитесь ей в социальных сетях

Оставить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

1 × четыре =

Это может быть вам интересно


Спасибо!

Теперь редакторы в курсе.

Прокрутить страницу до начала