Chuẩn bị khoe hàng

Tối qua trâu bò ngán nhai lại mớ lí thuyết ngôn ngữ học nên chuyển sang “cầy kéo” với đám thư mục, tập tin. Sau một hồi hì hục nắn hàng, tiến tiến lùi lùi đến chóng cả mặt thì cũng được một mảnh đất đủ tơi xốp.

#! /bin/sh

function makeCollection {
for a in `ls -1 --sort=extension | tr ' ' '^'`
do
	i=$(echo "$a" | tr '^' ' ')
	if [ -d "$i" ] && [ -x "$i" ]
	then
		echo "$i" | sed -r -e "s#^_(.*)#\1 (tổng hợp)#g" \
			-e "s#^(.*)#<li><b>\1</b>\n\t<ul>#g"
		cd "$i"
		for b in `ls -1 --sort=extension | tr ' ' '^'`
		do
			j=$(echo "$b" | tr '^' ' ')
			if [ -d "$j" ] && [ -x "$j" ]
			then
				echo -e "\t\t<li><i>$j</i>\n\t\t\t<ul>"
				ls -1 "$j" | sed -r "s#^(.*)#\t\t\t\t<li>\1</li>#g"
				echo -e "\t\t\t</ul>\n\t\t</li>"
			else
				echo -e "\t\t<li>$j</li>"
			fi
		done
		echo -e "\t</ul>\n</li>"
		cd ..
	else
		echo "<li>$i</li>"
	fi
done
}

echo '<html>
<head>
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<style type="text/css">
	body {
		font-family:arial, sans-serif;
		font-size:11px;
		color:#444;
	}
	i {
		color:blue;
	}
	b {
		color:navy;
	}
	</style>
</head>
<body>
<ul>' > list.html

makeCollection >> list.html

echo "</ul>
</body>
</html>" >> list.html

sed -r -e "/\.(sh|html|txt|jpg|gif|HTML|TXT|JPG|GIF)</d" \
	-e "s#\.(ogg|wav|wma|mp3)</li>#</li>#g" \
	-e 's#\&#\&amp;#g' \
	-e 's#(<li>[0-9]+) - #\1 \&mdash; #g' \
	-e 's# - # \&ndash; #g' \
	-i list.html

Nếu chạy trong thư mục nhạc Việt Nam thì sẽ được một thứ giống như thế này:

  • Ánh Tuyết
    • Cuộc đời vẫn đẹp sao
    • Em vẫn đợi anh về
  • Bức Tường
    • Tâm hồn của đá
      • 01 — Rock xuyên màn đêm
      • 02 — Bông hồng thuỷ tinh
      • 03 — Tâm hồn của đá
      • 04 — Ngày hôm qua
      • 05 — Chim hót trời xanh
      • 06 — Giọt đắng
      • 07 — Cơn mưa hoang dã
      • 08 — Người đàn bà hoá đá
      • 10 — Đường đến ngày vinh quang
    • Vô hình
      • 01 — Bài ca sông Hồng
      • 02 — Cây bàng
      • 03 — Cô gái mù
      • 05 — Con số 0
      • 06 — Đêm
      • 07 — Khám phá
      • 08 — Mắt đen
      • 09 — Vô hình
    • Nam châm
    • Vòng tay bạn bè

Đợi khi nào thu thập được một mớ tương đối thì sẽ chọn ngày đẹp trời để khoe phần còn lại 😛 .


Chuyên mục:

,