Maxim Likhachev 6 years ago
parent
commit
7675ef3df3
  1. 1
      bor
  2. 47
      espinfo
  3. 46
      vandroucli
  4. 32
      vandroucli.sed

1
bor

@ -2,7 +2,6 @@ @@ -2,7 +2,6 @@
#- Чтение цитат с bash.org.ru
curl -s https://bash.im/rss/ | \
iconv -c -f cp1251 -t utf8 | \
sed 's/<description><!\[CDATA\[/\n---------------------------\n\n/g;
s/\]\]><\/description>//g; s/<br>/\n/g; s/\&lt;/>> /g;
s/\&gt;/:/g; s/\&quot;/"/g; s/\s*<.*$\|\s*xmlns:.*$//g;' | \

47
espinfo

@ -1,47 +0,0 @@ @@ -1,47 +0,0 @@
#!/usr/bin/env tclsh
#Создан: Пн 28 апр 2014 21:31:36
#Изменён: Вт 29 апр 2014 08:45:11
#Информация о файлах плагинов игры TES III Morrowind
proc pluginInfo {pname} {
#Открытие файла
set plugin [open $pname r]
#Чтение заголовка
read $plugin 32
#Автор
set author [regsub -all {\x00} [encoding convertfrom cp1251 [read $plugin 32]] {}]
#Описание
set desc [regsub -all {\x00} [encoding convertfrom cp1251 [read $plugin 250]] {}]
#Требования
#Начало секции
read $plugin 12
#Удаление сигнатур, пустых строк, "хвоста" секции
regsub -all {DAT.*?MAST} [encoding convertfrom cp1251 \
[read $plugin 180]] "\n" requ
regsub -all "\n+" $requ "\n" requ
regsub -all {DAT.*|ST|\x00|[^\w\.\n ]} $requ {} requ
#Отображение зависимостей
set depends ""
foreach key [split $requ "\n"] {
append depends "\n+ $key"
}
file stat $pname crtime
format "\[%s\]\n\n%s\n\n%s\n%s\n" [file tail $pname] $author [fmt $desc] $depends
}
#Форматирование длинных строк
proc fmt {string} {
regsub -all -- {.{35,45} } $string "\&\n"
}
if {$argv == ""} {
puts stderr "USAGE: [file tail $argv0] file.esp"
} else {
puts [pluginInfo [lindex $::argv 0]]
}

46
vandroucli

@ -1,46 +0,0 @@ @@ -1,46 +0,0 @@
#!/bin/bash
#Создан: Чт 05 апр 2018 10:26:40
#Изменён: Вс 22 сен 2019 08:29:53
# Получение последних записей с сайта vandrouki.ru
URLS="https://vandrouki.asia https://vandrouki.by https://vandrouki.ru"
rstc="\033[00m"
yellow="\033[1;33m"
blue="\033[1;36m"
green="\033[1;32m"
for url in $URLS; {
echo -e "$green> $url $rstc\n"
curl -s -q "$url" \
| sed 's/<html.*xmlns.*$//g' \
| xmllint --html --xpath "//html/body/div[@id='content']/div[@id='primary']/div/*[self::div/span[@class='published'] or self::h2/a]" - 2>&- \
| awk 'BEGIN { RS="" }
{
gsub(/\n+/, "@");
gsub(/<h2 class="entry-title">/, "\n");
gsub(/(href=")|(" rel=[^>]*>)|(published.>)/, "@");
gsub(/(&#[0-9]+;)|(<[^@>]*>*)/, "");
gsub(/@\s*@*/,"@");
print
}' \
| awk -F'@' -v blue="$blue" -v yellow="$yellow" -v green="$green" -v rstc="$rstc" '
/^\s*$/ {
next
} {
if ($4 ~ /^\s*$/) {
date = $5
} else {
date = $4
}
print blue " # " date "\t" yellow toupper($3) "\n\t\t" green $2 rstc
}'
echo -e "\n--------------------------------\n"
}

32
vandroucli.sed

@ -1,32 +0,0 @@ @@ -1,32 +0,0 @@
#!/bin/bash
URLS="https://vandrouki.ru https://vandrouki.by https://vandrouki.asia"
# URLS="https://vandrouki.by"
rstc="\033[00m"
yellow="\033[1;33m"
blue="\033[1;36m"
green="\033[1;32m"
for url in $URLS; {
echo -e "$green> $url $rstc\n"
curl -s -q "$url" \
| sed 's/<html.*xmlns.*$//g' \
| xmllint --html --xpath "//html/body/div[@id='content']/div[@id='primary']/div/*[self::div/span[@class='published'] or self::h2/a]" - 2>&- \
| tr '\n' '\r' \
| sed -e 's/\r\r/####/g; s/\r/@/g; s/####/\n/g; s/<h2 class="entry-title">/\n/g' \
| sed 's/href="/@/; s/" rel=[^>]*>/@/; s/published.>/@/' \
| sed -E 's|^</div>@||; s/&#[0-9]+;//g' \
| sed '/^\s*$/d' \
| awk -F'@' -v blue="$blue" -v yellow="$yellow" -v green="$green" -v rstc="$rstc" \
'{
print blue " # " $6 "@" yellow toupper($3) "\n@ " green $2 rstc
}' \
| sed 's/@@@*/@@/g' \
| sed -e :a -e 's/<[^>]*>//g;/</N;//ba' \
| column -t -s @
echo
}
Loading…
Cancel
Save