- 1 名前:名無しさん@お腹いっぱい。 [2008/05/20(火) 20:58:04 ]
- シェルスクリプトの総合スレです。
スクリプトのお勉強・自慢・腕試しなどにどうぞ。 まずは注意点、リンク、地鎮祭など(>>1-6くらい)をご覧ください。 □お約束 ・特記なき場合はBourne Shell(/bin/sh)がデフォルトです。 bash/zsh/ksh/ashなどに依存する場合は明示しましょう。 Linuxユーザは/bin/shの正体がbashなので特に注意。 ・csh/tcshのシェルスクリプトは推奨されません。 (理由は「csh-whynot」でググれ) ・UNIXにはシェルスクリプトに便利な小さなコマンドがいろいろあります。 manや参考リンクを見ましょう。 aproposないしはman -kでそれらしい単語による簡単な検索もできます。 ・シェルスクリプトのことをシェルってゆーな ・シェルで使えるワイルドカード等は正規表現ではありません。 正規表現の話題はスレ違い(正規表現スレへ) □初心者へのアドバイス: ・適した道具を判断するのも頭の重要な使い方。シェルスクリプトよりも RubyやPerlの方が適した仕事には素直にそちらを使いましょう。 ・知らないコマンドが出てきたらmanを引きましょう。 ・思い通りに動かないときは、まずは sh -x でトレースしましょう。 シェルスクリプト総合 その10 pc11.2ch.net/test/read.cgi/unix/1202725267/
- 182 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/03(火) 02:06:40 ]
- >>158 >>160 >>161
ありがとうございました!感謝!
- 183 名前:名無しさん@お腹いっぱい。 [2008/06/03(火) 03:43:47 ]
- 質問です。
aaa=`commando1` bbb=`commando2` このような「``」内のコマンドを1つにまとめるにはどうしたらいいでしょうか? 例えば #!/bin/sh temp=`ls -l $1` pram=`echo $temp | cut -d " " -f 6-8` echo $pram tempとpramで分けてるものを1行でまとめたいです。
- 184 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/03(火) 04:07:13 ]
- ネストすればいい。
- 185 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/03(火) 06:53:17 ]
- >>183
ネストする必要ない。というか、tempに入れる必要ない。 pram=`ls -l $1 | cut -d " " -f 6-8`
- 186 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/03(火) 12:01:25 ]
- >>184
一般論の話だろ。 その例に限れば、それでいいけど。
- 187 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/03(火) 12:44:26 ]
- POSIXシェルを仮定して「$()」使うのが正解。
- 188 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/03(火) 13:08:58 ]
- >>187
アフォか
- 189 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/03(火) 13:12:22 ]
- >>183
一般論として、 aaa=`command1` bbb=`command2 $aaa` なら、 bbb=`command2 \`command1\`` で桶。
- 190 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/03(火) 13:17:54 ]
- >>188
なんで?
- 191 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/03(火) 13:19:05 ]
- 純正シェルで動かないから。
>>189 という正解があるのに、わざわざポータビリティを落す $()を使う必要ないから。
- 192 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/03(火) 13:21:04 ]
- >>191
可読性が落ちる。
- 193 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/03(火) 13:22:50 ]
- >>192
それはシェルに慣れてないお前だけ。
- 194 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/03(火) 13:23:46 ]
- 3重、4重のネストが必要なときはどうするのだ? www
大半のシステムで使用できる$()を避けて可読性を劣化させる必要は無い。 このスレに巣食っている原理主義者以外は$()使うのが正解。
- 195 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/03(火) 13:24:12 ]
- >>181
一般論として仮定しちゃって良い?
- 196 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/03(火) 13:24:13 ]
- 可読性を言うなら、むしろネスティングを避けて
一旦別変数に入れる方式の方がいいぞ。 >>183 の質問の逆をやれってことね。
- 197 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/03(火) 13:24:53 ]
- >>194
Solarisは大半のシステムじゃないのかい?
- 198 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/03(火) 13:27:12 ]
- Solaris?なにそれ、おいしいの?
- 199 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/03(火) 13:34:17 ]
- Solarisを見落としていた >>194 の負けだな
- 200 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/03(火) 13:36:22 ]
- >>194
3重ネストは \\\`command\\\` 4重ネストは \\\\\\\`command\\\\\\\` 何か問題ある?w
- 201 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/03(火) 13:41:28 ]
- Solarisならば、普通kshかxpg4シェル。
- 202 名前:名無しさん@お腹いっぱい。 [2008/06/03(火) 20:09:41 ]
- 質問させてください。
テキストファイルの内容が以下のようになっています。 日付 文字列 上記文字列に改行コードが存在する場合、以下のようになります 20080602 aaabbbccc 20080602 dddee ef ff 20080602 ggghhhiii これをこのように正しく変換するにはどうしたらいいでしょうか? 20080602 aaabbbccc 20080602 dddeeefff 20080602 ggghhhiii
- 203 名前:名無しさん@お腹いっぱい。 [2008/06/03(火) 20:18:28 ]
- 202の続き
とりあえずない頭を絞って先頭文字が「2008」でない行に|を入れて以下のような レイアウトにし 例) 20080602 aaabbbccc 20080602 dddee |ef |ff 20080602 g |gg |hhhi |ii 過去ログにあったコマンドを参考に以下のコマンドを実行しましたが 「(rm a.txt; sed 'N; s/\n|//; P; D' > a.txt) < a.txt 」 例) 20080602 aaabbbccc 20080602 dddeeef |ff 20080602 ggg |hhhiii と、いった感じですべて変換することができません。 よろしくお願いします。
- 204 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/03(火) 20:41:47 ]
- >>202
これでどうだ。 頭に余分な空行が出るのは無視してね ↓ while read line do set $line if [ $# = 1 ]; then echo -n $1 else echo echo -n $1 $2 fi done < file.txt echo
- 205 名前:名無しさん@お腹いっぱい。 [2008/06/03(火) 21:33:33 ]
- >>204
ありがとうございます。 すみません。わたしの記載漏れになりますが文字列の中にはスペースも存在します。 詳しく言いますとこの文字列とはSQLなのです。 なので「select * from table」のようになります。 せっかく考えて頂いたのにすみませんでした。
- 206 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/03(火) 21:38:11 ]
- 後出し乙。これで回答を得られることはないであろう。
- 207 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/03(火) 21:46:02 ]
- わしが代わりに答えてあげよう。
正解のmd5じゃ。 9c42265ebade7ace4e45b75b8d41f7ab
- 208 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/03(火) 22:45:18 ]
- 初心者な質問ですいません。
自分で書いたシェルをコマンドとして発光するにはどうするんですか?
- 209 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/03(火) 22:47:26 ]
- 発酵させるには、ながーい時間がかかるよ
- 210 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/03(火) 23:22:26 ]
- >>207
お題を自分で解いた(かもしれない)だけで、答えたことになってないよな
- 211 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/04(水) 06:27:08 ]
- >>207
そのmd5逆算したところ、確かに動きました。感謝です。
- 212 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/04(水) 07:33:03 ]
- すげぇなおい
- 213 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/04(水) 11:28:09 ]
- >>202
どっちも書き方として邪道かつ汚いけど結果オーライなら。 cat $SQL_FILE | awk '{ if(/^20[0-9]+ /) { printf "\n"; } printf $0; } END { printf "\n" }' cat $SQL_FILE | perl -ne 'chop; print "\n" if(/^\d{8}\s/); print; END{ print "\n" }'
- 214 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/04(水) 15:08:22 ]
- 全然シェルスクリプトじゃない件
- 215 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/04(水) 15:17:43 ]
- #!/bin/sh
awk '{ if(/^20[0-9]+ /) { printf "\n"; } printf $0; } END { printf "\n" }'
- 216 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/04(水) 15:22:33 ]
- awkスレと聞いて
- 217 名前:215 mailto:sage [2008/06/04(水) 15:27:14 ]
- まぁ >>6 にも入ってるし、sed awk はテキスト処理では欠かせないな。
>>213 は、改行コードの扱い方が珍妙で、よく出来てると思った。
- 218 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/04(水) 23:33:14 ]
- 192168000001 を 192.168.0.1 に変換するスマートな方法を教えてください。
一オクテットが、3 ケタずつに区切られています。
- 219 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/04(水) 23:43:18 ]
- echo 192168000001 |
sed 's/.../& /g' | awk '{print $1+0 "." $2+0 "." $3+0 "." $4+0}'
- 220 名前:202 mailto:sage [2008/06/04(水) 23:45:50 ]
- >>213
ありがとうございます。 出来ました。 なるほど改行コードを削除することに躍起になっていましたが、 マッチした時だけ前に改行コードを付けるというやり方もあるんですね。 なかなか思いつかない発想だったので勉強になりました
- 221 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/04(水) 23:54:42 ]
- echo 192168000001 | sed 's/.../&./g;s/¥.0*/./g;s/¥.¥./.0./g;s/¥.$//'
s/¥.00?/./ とか書きたいにゃー。
- 222 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/05(木) 00:02:30 ]
- echo 192168000001 | sed 's/.../& /g;s/ $//;s/ /./g'
- 223 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/05(木) 05:47:11 ]
- sh -c 'echo fugafuga'
と eval 'echo fugafuga' が異なるのは、どのような時なのでしょうか。 fugafugaの部分は任意です。
- 224 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/05(木) 06:33:34 ]
- >>220
おいおい、>>213 の改行付加の発想は >>204 と同じだぞ。 >>204 の時点でその方法に気づけ。 >>204 を改良して、スペースが入った場合の問題は対処できる。 awk/perlなどのシェル以外のものを使わずにね。
- 225 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/05(木) 06:37:46 ]
- >>223
たとえば、 set hoge sh -c 'echo "$@"' と、 set hoge eval 'echo "$@"' は異なる。
- 226 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/05(木) 14:30:52 ]
- すいません
スペース区切りの文字列をカンマ区切りに変えたいんですが、 スペースが一つとは限りません a hoge b ge c h これを a,hoge b,ge b,h こんな感じです bashでできないですか? awkも使えます
- 227 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/05(木) 14:33:22 ]
- すいません
条件がもう一つ カラム数は固定じゃないです
- 228 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/05(木) 14:33:44 ]
- sedは禁止?
sed 's/ */,/g'
- 229 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/05(木) 14:35:50 ]
- while read line
do set -- $line echo -n $1 shift for i in "$@" do echo -n ,$i done echo done
- 230 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/05(木) 14:40:56 ]
- >>228
ダウト。試してから書き込めよ。
- 231 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/05(木) 14:42:08 ]
- >>230
試したよ。 何で2ch読んでる?
- 232 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/05(木) 14:45:44 ]
- 何をどう試したんだ
- 233 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/05(木) 14:47:20 ]
- >>228
echo 'aaa bbb ccc' | sed 's/ */,/g' ,a,a,a,b,b,b,c,c,c,
- 234 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/05(木) 14:48:54 ]
- $ echo 'aaa bbb ccc' | sed 's/ */,/g'
aaa,bbb,ccc
- 235 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/05(木) 14:49:14 ]
- sedなら正解は、
sed 's/[ ][ ]*/,/g' だな。
- 236 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/05(木) 14:50:50 ]
- >>234 をコピペして実行してみろw
$ echo 'aaa bbb ccc' | sed 's/ */,/g' ,a,a,a,b,b,b,c,c,c, この問題を避けるには、>>235 が正解。
- 237 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/05(木) 15:05:50 ]
- 「この問題」って、専ブラを使わずに煽る○○がいる問題って意味だな
- 238 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/05(木) 15:27:44 ]
- で、>>226は納得したのか?
- 239 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/06(金) 00:58:06 ]
- >>235
これの意味がよくわからんのだが・・・ なんでこれでいいの?
- 240 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/06(金) 01:19:14 ]
- [ ] の意味と>>230がキレた理由はわかるかね?
- 241 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/06(金) 01:23:10 ]
- >>239
解説するのも野暮だが… >>230,>>232はスペースが2個あることに気付かず醜態を晒してしまったわけだが、 >>235のように書いておけば見落とし確率が下がって嬉しいという記法。
- 242 名前:239 mailto:sage [2008/06/06(金) 01:37:14 ]
- >>240
>>241 すまん shなんだけどlinux(fedora8) じゃだめなんかな? sh-3.2$ echo 'aaaaaa bbbbbbb ccc' | sed 's/[][]*/,/g' ,a,a,a,a,a,a, , , , , , , , , , , , , , ,b,b,b,b,b,b,b, , , , , , ,c,c,c, sh-3.2$
- 243 名前:239 mailto:sage [2008/06/06(金) 01:39:25 ]
- 自己解決
[]じゃなくえ[ ]だったわ あほだおれ
- 244 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/06(金) 04:51:10 ]
- あの夜、俺は初めて彼女とMMXした。
「もうそろそろiiyama? 君のI/ODATAを確かめたいんだ。XT」 MITSUMIあうと、彼女のMECはALBATRONとしていた。 緊張した俺は焦り彼女のソケット478をAOpenしようとした。 「ちょ、ちょっとRADEON!何をSis」もう俺は既にエレコム。 Sound Blasterのホックを外すとはちきれそうなPioneerがBarracuda でもBIOSTARは意外と玄人志向だった。 「恥ずかしいわ。あまりミネベア・・・」 SCSIをTORICAるとKEIANをSOLTEKした痕がアルファデータ。 あそこはSUPERMICROだった。OMEGAドライバも少し鼻についた。 しかし、彼女のCREATIVEを刺激しつつ俺のセレロンを 彼女のSerial-ATAからASUSに這わせると、「FireWire〜ン」 「もう、ATI」「COREGA欲しいんだろ?」「早くリテール」 俺は激しくTSUKUMO。「インテルはいってるっ!IEEE!1394!」 「あぁ・・・もうDell!」
- 245 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/06(金) 06:19:56 ]
- OFSのあるawkなら、
awk 'BEGIN { OFS=","} { $1 = $1; print $0 }'
- 246 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/06(金) 06:32:12 ]
- >>241
見落としたのじゃなくて、本当に(HTML解釈上で)複数のスペースが 1個のスペースで表示されてしまうから、「>>228 >>234 をコピペしても動かない」が正解。 >>235 のように書き込めば、コピペしてもちゃんと動く。 醜態を晒したのは >>228 >>234 の方。 ちなみに、宣ブラ使ってもやっぱり >>228 >>234 のスペースはひとつだよ。
- 247 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/06(金) 08:07:53 ]
- ダサい専ブラ
- 248 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/06(金) 08:20:28 ]
- たしかにダサい専ブラだな。
- 249 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/06(金) 08:31:46 ]
- ブラウザ依存も、Bash依存同罪。
ポータビリティ考えて書き込めよ。
- 250 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/06(金) 08:41:33 ]
- いつのまにか落ちてたので、立てました。
zsh その5 pc11.2ch.net/test/read.cgi/unix/1212677877/
- 251 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/06(金) 08:45:33 ]
- sed -r 's/ +/,/g'
の方が良くね?
- 252 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/06(金) 08:49:28 ]
- どこのsedだよ
- 253 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/06(金) 08:50:10 ]
- /bin/sed
- 254 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/06(金) 08:51:37 ]
- $ type sed
sed is a shell builtin
- 255 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/06(金) 09:02:22 ]
- 大半のシステムで使用できる sed -r を避けて可読性を劣化させる必要は無い。
このスレに巣食っている原理主義者以外は >>251 使うのが正解。
- 256 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/06(金) 09:20:12 ]
- 自分が読めない = 可読性が低い
- 257 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/06(金) 10:01:25 ]
- sed 's/ */,/g'
これなら文句はねえよな?
- 258 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/06(金) 10:09:26 ]
- >>257
>>228と同じじゃん。 文句あるみたいよ。
- 259 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/06(金) 10:11:21 ]
- >>258
>>228とは違う。こっちはちゃんと を使ってるんだが まだ空白がつながって見えるかな? ナマの空白をつなげたら、HTML仕様的にはくっつくのが当たり前だよ
- 260 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/06(金) 11:49:01 ]
- >>226
tr -s ' ' , でいけないか。
- 261 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/06(金) 20:02:12 ]
- sed 's/ * /,/g'
- 262 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/07(土) 10:18:23 ]
- >>254
いいな
- 263 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/08(日) 02:28:12 ]
- 結婚を考えていた彼女が処女じゃなかったんです7
1 :最強の負け組み:2008/03/01(土) 05:37:53 ID:YrfLoASe ショックでした。 もしやもしやと思っていたのですが 面と向かって告白された時は目の前が真っ暗になりました。 「処女とかそんなの関係ない!」 そう自分に言い聞かせてきましたが、やはり限界がきてしまい 彼女に別れを告げました。 知り合いに言うと 「は?そんなくっだらない事であんないい子と別れたの? ばっかじゃね?もうあんな子絶対知り合えないぞ?」 とボロかすに言われました。 頭では判っているのに心で理解できないんです。 私自身、もう頭の中がぐちゃぐちゃで訳がわかりません。 彼女を傷つけてしまったのでしょうか? 別れの時、彼女は黙って頷き 「じゃあね」 と笑って去っていきました。 もう私には彼女の気持ちがどうなのか あの微笑がなんだったのか理解できないのです。 やはり私は馬鹿な事をしたのでしょうか?
- 264 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/08(日) 05:17:54 ]
- >>263
echo じゃあね : -P exit
- 265 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/09(月) 01:04:38 ]
- ふともも画像が100〜400x810pxくらいのサイズであったとします。
横幅が1440pxを超えないように画像を結合するスクリプトを書きたいのです。 結合する画像の組み合わせは特別に指定しません。 横幅が1440以下でかつなるべく大きければ何でもいいです。 たとえば、画像は40枚とします。 1.jpg 300x810 2.jpg 300x810 3.jpg 300x810 4.jpg 300x810 5.jpg 300x810 6.jpg 300x810 ************** 40.jpg 200x810 だとしたら、1,2,3,4 を結合させて image1.jpg (1200x810px)を作ります。 それ以降も同様なことを繰り返します。 お願いします。
- 266 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/09(月) 01:23:06 ]
- ふともも画像について詳しく
- 267 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/09(月) 01:51:05 ]
- うん、画像のふとももが実際どうなのかによって対処法も違うよね。
- 268 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/09(月) 05:26:55 ]
- おまいら少しは協力してやれよw
で、画像の件なんだがね。。。
- 269 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/09(月) 10:51:46 ]
- 画像のサンプルがないことにはどうにもならん。
- 270 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/09(月) 11:56:21 ]
- >>265
いわゆるナップサック問題なので、最適解を求めるのはシェルスクリプトには荷が重い。
- 271 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/09(月) 12:23:52 ]
- >>270
最適解じゃなくていいから、指定サイズ以下に並べられる シェルを書いてうpしてください。
- 272 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/09(月) 13:08:20 ]
- 最適じゃなくていいなら
頭から順にならべて1440を越えたら次に行けばいいだけじゃん。
- 273 名前:265 mailto:sage [2008/06/09(月) 13:08:54 ]
- サンプル画像です。
素材に対する文句はいっさい受け付けません。 home2.dip.jp/upload100_download.php?no=28514 mai 最近大量に脚画像つくったのがこれしかなかったので。 >>270 そうですか。 でも、しばらく回答を待ちます。 >>271 脚画像をならべるスクリプトは需要があるようですね。
- 274 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/09(月) 14:02:24 ]
- >>272
2次元だから、最適じゃなくても単純にはいかないだろ。
- 275 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/09(月) 22:31:54 ]
- ここは楽しい
モーレツインターネッツ教室でつね ワッフルワッフル
- 276 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/09(月) 22:41:50 ]
- X軸方向に複数画像並べるだけで、Y軸方向には画像は並べない(1枚だけ)という仕様なの?
- 277 名前:265 mailto:sage [2008/06/09(月) 22:49:54 ]
- >>276
そうです。
- 278 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/09(月) 22:56:48 ]
- 条件後出し乙。
だったら質問するまでもない簡単な問題じゃん。 アフォらしいから回答するの辞めた。
- 279 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/09(月) 23:14:13 ]
- 便乗質問します。
X座標のドット数も、Y座標のドット数も可変の画像ファイルが複数あります。 これを、引数指定のX/Y座標の画面サイズに収まるように、 なるべく多く、なるべくすき間なく画像を並べるようなシェルを発光してください。 なお、実際の画像結合処理は別コマンドにやらせるので、 入力としては、各画像ファイルのファイル名とX/Yサイズが書かれたテキストファイルの $ cat input.txt 1.jpg 300 200 2.jpg 530 250 3.jpg 410 180 4.jpg 640 480 を入力として、 $ hoge input.txt 1200 1280 とやると、 出力として、 1.jpg 0 0 2.jpg 300 0 3.jpg 0 300 : みたいに、画像を配置するべき座標を画像の左上のオフセットで指定して 出力できればいいです。 最適配置にする必要はありませんが、当たり判定はちゃんとやって、 画像が重ならないようにしてください。
- 280 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/10(火) 00:02:57 ]
- いつからここは
エロ画像処理スレッドになったんでしょうか。
- 281 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/10(火) 00:04:47 ]
- しかも画像も貼らずに質問とは。
- 282 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/06/10(火) 01:46:24 ]
- ImageMagick で一発?
|

|