■OSS-DB Silverの例題をダウンロードして一ファイルにまとめるワンライナー
$ test -d OSS-DB_Silver || mkdir OSS-DB_Silver && cd OSS-DB_Silver; \
BASE="http://www.oss-db.jp/measures/"; \
for target in \
sample_silver_management.shtml \
sample_silver_knowledge.shtml \
sample_silver_sql.shtml \
;do \
wget -O - "${BASE}${target}" | \
grep "<em>Q." | lv -s | grep -v "★★" | awk -F\" '{print $2}' | \
for list in `xargs`;do \
wget "${BASE}/${list}"; \
done; \
done; \
commonline=`ls *.shtml | wc -l`; \
for list in *.shtml;do \
w3m -dump "$list" > $(echo "$list" | sed s/"shtml"/"txt"/); \
done;unset list; \
for list in *.txt;do \
totalline=`wc -l "$list" | awk '{print $1}'`; \
tail -n $(($totalline - 28)) "$list" | \
head -n $(($totalline - 114 - 28)) > $(echo "$list" | \
sed s/"txt"/"log"/); \
done; unset list; \
for list in *.log;do \
for n in `seq 1 100`;do echo -n "-";done; echo ; \
grep -v 'Yahoo!ブックマークに登録' "$list" | \
grep -v '• English' ; \
done > ../ossdb_silver.log
■かなりの量があります。
$ wc -l ../ossdb_silver.log
4553 ../ossdb_silver.log
■例題として100問あります。
「50問/1試験」なので2回分です。
$ grep "^\-*\-\$" ../ossdb_silver.log | wc -l
100
■「.txt」「.log」も同じ数あります。
不要なら削除を。
$ ls ../OSS-DB_Silver/* | awk -F\. '{print $NF}' | sort | uniq -c
97 log
97 shtml
97 txt
■Goldの例題の場合は以下で。
OSS-DB Goldの例題をダウンロードして一ファイルにまとめるワンライナー
http://labunix.hateblo.jp/entry/20140928/1411833011