- 1 名前:login:Penguin [2007/07/10(火) 23:17:13 ID:qGthZdME]
- UNIX板のスレを見ている方も多数おられるかと思いますが、
まあそれはそれとして、BASHウゼーとか言われる心配なく 平和にLINUX的スクリプト談義しましょうよ。 初めての自作スクリプト、自信ないから見てください。な初心者から トリッキーな技を駆使した作品を披露したい、蘊蓄を語りたい上級者まで いろいろな人に参加して頂けると嬉しいです。 perlやらPythonやらの話が混ざっても良いんでない? 【sed】シェルスクリプト総合@LINUX Part2【awk】 pc11.2ch.net/test/read.cgi/linux/1154578200/ pc8.2ch.net/test/read.cgi/linux/1121994321/ >>2-5あたりに色々と。
- 557 名前:login:Penguin [2008/02/02(土) 02:58:37 ID:jQtmOvcu]
- 例えばここに置いてある松金洋子のデスクトップ用壁紙画像をターゲットとする。
www.sexydesktop.co.uk/youko.htm ここには全部で4ページ分48種類の松金洋子の画像がある。 ## このサイトの画像はすべてデスクトップ用の壁紙を目的としているので、 ## 一つの画像に関して数種類の解像度・縦横比の画像が用意されており、 ## アクセスしてきた人の使っているディスプレイ解像度を検出しては、 ## 最適な解像度のものを優先的にプッシュするようになっている。 ## また、画像ファイルの命名ルールは非常に単純かつ形式的で、 ## たとえば例に挙げた松金洋子の画像の場合、 ## まず画像の名前を表す youko1 から youko48 までの48種類の画像が用意されている。 ## さらにそれぞれの解像度を表す 1280x800 や 800x600 の文字列が続き、 ## 最後に拡張子 .jpg が付けられている。 ## 注意する点があるとすると、例えば youko48 に対して youko01 だとか、 ## 1280x1024 に対して 0800x0600 といった「桁数合わせ」が一切行われていないということ。
- 558 名前:557 [2008/02/02(土) 02:59:35 ID:jQtmOvcu]
- ここから先が質問。やりたいことは、
1). サイトがプッシュしてくるこちらのディスプレイ解像度に関係なく、 すべての画像について、解像度のより大きいバージョンを、 番号の一番若いものから古いものまで全種類取って来たい。 2). その際、取って来た画像のファイル名を修正して、 youko48 に対しては youko01 、1280x1024 に対して 0800x0600 などの「桁数合わせ」をしたい。 3). さらに、ファイル名の中の画像名を表す文字列と、解像度を表す文字列とを _ で結ぶようにしたい。 具体的には、youko11600x1200.jpg と名付けられた youko1 という画像の 1600x1200 版のファイル名を、youko01_1600x1200.jpg としたい。同様に、youko481280x1024.jpg と名付けられた youko48 という画像の 1280x1024 版のファイル名を youko48_1280x1024.jpg としたい。 以上をまとめると、参考例の松金洋子の画像で言えば、 youko11600x1200.jpg から youko481280x1024.jpg までの画像を、 youko01_1600x1200.jpg から youko48_1280x1024.jpg として保存したい。 これを実現するスクリプトをどう書けばいいでしょうか? なお、好みのタレントの画像が何種類用意されているか(松金洋子の場合は48種類)については、 ダウンロードを開始する前に手作業で調べることとします。
|

|