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 あたりに色々と。
196 名前:login:Penguin mailto:sage [2007/09/18(火) 18:48:06 ID:mMDRvNP8] >>195 スマソが懽の隣の文字のフォントが無いのだが E3 5E って表示になってる
197 名前:login:Penguin mailto:sage [2007/09/18(火) 19:09:24 ID:AGCqK3mV] 半角カナで書いたら化けた模様w
198 名前:login:Penguin mailto:sage [2007/09/18(火) 21:50:07 ID:En+WDn3C] bashでスクリプトと組んでいる途中でつまづいてしまいました ~/tmp/ 以下にあるファイルすべてに対してファイル変換したいのです(例 aaaaa ⇒ aaaaa.txt) ~/tmp/aaaaa ~/tmp/bbbbb : ~/tmp/nnnnn ============= cd ~/tmp/ ls_result1=`ls` for list1 in $ls_result1 do #便宜上 (変換コマンド) (変換前) (変換後) とします (変換コマンド) ~/tmp/$(list1) ~/tmp/tmp/$(list1).txt ←listの使い方が間違っているのだと思います done ============= list1 not found というエラーがたくさん出てきてしまい困っております。 ~/tmp/ 以下にあるファイル名をそのまま使いたいので、どなたかご教授ください。
199 名前:login:Penguin mailto:sage [2007/09/18(火) 22:05:47 ID:9R+Y1frn] >>198 ×(変換コマンド) ~/tmp/$(list1) ~/tmp/tmp/$(list1).txt ○(変換コマンド) ~/tmp/${list1} ~/tmp/tmp/${list1}.txt
200 名前:198 mailto:sage [2007/09/18(火) 22:15:47 ID:En+WDn3C] >>199 できました♪ ありがとうございました m(_ _)m
201 名前:login:Penguin [2007/09/19(水) 06:55:54 ID:OLZv4Z+v] sed で/、\を多用できるようになりますたww \tとか技も覚えますたww みなさんdd!
202 名前:198 mailto:sage [2007/09/19(水) 12:51:22 ID:OlaeIc6l] ~/tmp/ 以下にある txtファイル だけファイルの中で置換したいのですが、 またつまづいてしまいました # その前の処理で year month day hour という変数が与えられています txtファイルの1行目 2007090100AB ⇒ year month day hour AB(変数の間のスペースなし、ABは固定文字列) txtファイルの2行目 2007/09/01 ⇒ year/month/day そこで以下のように作ったのですが、~/tmp/ に bakファイルが作られておらず、 echo $ls_result を見ると /home/myname/tmp/*.txt となっていました 想定では *.txt だったのですが・・・ ================= ls_result=`ls ~/tmp/*.txt` for list in $ls_result do cp -p $list ${list}.bak sed -e '1 s/2007090100AB/${year}${month}${day}${hour}AB/' ${list}.bak sed -e '2 s/2007\/09\/01/${year}\/${month}\/${day}/' ${list}.bak mv &{list}.bak $list #rm -f ${list}.bak ================= どなたか教えてください。よろしくお願いします。
203 名前:login:Penguin mailto:sage [2007/09/19(水) 15:41:53 ID:Ii4uF/l/] これではまともに動いてもbakファイルはないだろ
204 名前:login:Penguin mailto:sage [2007/09/19(水) 18:36:32 ID:42fTFu0H] >>202 これだと置換後のファイルを.bakに作って、そのあと出来た.bakをオリジナルに 重ね書き(しかもムーヴ)してるように見えるけど。 .bakとオリジナルの2個とも残したいなら、mvじゃなくてcpだろうね。 それ以前に、こういう処理だと普通は.bakに変換前のオリジナルを残すと思うが。 最初にオリジナルを.bakにcpしてあるんだから、.bakは触らずに、元のファイルに sedかけて、最後のmvは不要では
205 名前:198 mailto:sage [2007/09/19(水) 20:34:50 ID:OlaeIc6l] >>203-204 コメントありがとうございます いただいたアドバイスどおり、bakにはさわらずにオリジナルでsedかけてみました ところが、シェルを動かした後のファイルを見ると動かす前とまったく同じ状態でした。 タイムスタンプも動かす前と同じでした。 sedの使い方が間違っているのでしょうか。今一度教えてください。 ================= ls_result=`ls ~/tmp/*.txt` for list in $ls_result do cp -p $list ${list}.bak sed -e '1 s/2007090100AB/${year}${month}${day}${hour}AB/' ${list} sed -e '2 s/2007\/09\/01/${year}\/${month}\/${day}/' ${list} #rm -f ${list}.bak =================
206 名前:login:Penguin mailto:sage [2007/09/19(水) 20:37:21 ID:NIZBsTRK] >205 sedは-iオプションを指定しないと結果を標準出力に書き出すだけだよ。
207 名前:login:Penguin mailto:sage [2007/09/19(水) 21:25:46 ID:gh8Zvftq] sed -i.bak -s \ -e "1s/2007090100AB/${year}${month}${day}${hour}AB/" \ -e "2s,2007/09/01,${year}/${month}/${day}," \ ~/tmp/*.txt で、よくね?
208 名前:198 mailto:sage [2007/09/19(水) 21:44:56 ID:OlaeIc6l] >>203-204 ,206-207 207さんのとおりにしたら、想定どおりに動きました! みなさんありがとうございました。m(_ _)m ずっと調べてたらこんな時間に… 今からごはん作ります (^o^)/
209 名前:login:Penguin [2007/09/21(金) 15:18:02 ID:5N/Tidqv] ディレクトリーA(ファイルが入ってます)を 10/1〜10/31の日付名でコピーしたいのですが なんかいい方法無いでしょうか? Zshだと cp -R A 10[1-31]なんてできるのでしょうか?
210 名前:login:Penguin mailto:sage [2007/09/21(金) 15:27:31 ID:KLJI/R6G] >>209 for i in {01..31}; do cp -pR A A10$i; done zsh と bash で挙動違うな。
211 名前:login:Penguin mailto:sage [2007/09/21(金) 15:37:28 ID:KLJI/R6G] >>209 < - > のことなら、ちょっと用途が違うよ。 こんなんやってみ。 % touch B2 % ls B{1..3} % ls B<1-3>
212 名前:login:Penguin mailto:sage [2007/09/21(金) 15:46:39 ID:5N/Tidqv] >>210 ハヤッ! ありがとうございます! ディレクトリーAにhoge01〜100ってファイルを作ったときは Zshでさらさら〜って逝けたのですが 現在bash環境なのでそれなりに書かないといかんなと思いつつ 3行になってしまう、漏れの脳みそでした il||li○| ̄|_ 1行でやりたかったww さすがです>>210 様 1行でばっちりコピーできますた
213 名前:login:Penguin mailto:sage [2007/09/21(金) 15:49:11 ID:5N/Tidqv] >>211 すみません −じゃなくて..でした なかなか参考になるスッドレですね 正規表現もきっちり覚えないといけませんねorz
214 名前:login:Penguin mailto:sage [2007/09/22(土) 04:00:27 ID:DSw3XQMb] for d in {01..31} ; do printf "%02d " $d; done
215 名前:73ですが mailto:sage [2007/09/22(土) 22:02:55 ID:TBL9KN2J] >>94 おくればせながらスクリプトが動くようになりました。 御指摘のとおりスペースの数などがあっていませんでした。 ありがとうございました。
216 名前:login:Penguin mailto:sage [2007/09/26(水) 09:48:46 ID:kfTmpMA+] 時間の逆算っていい技ないですか? やぱ現在時刻から60進法で計算したほうが早い? 現在時刻 21:24 残り時間 36分で22時 って感じ で、やてみたい
217 名前:login:Penguin mailto:sage [2007/09/26(水) 09:54:08 ID:lgPbyfYB] >>216 coreutilsのdateを使う。
218 名前:login:Penguin mailto:sage [2007/09/26(水) 13:11:02 ID:kfTmpMA+] date --date xxmin とかできるのですね!! しらなんだポカーン >>217 ありがdクス
219 名前:login:Penguin mailto:sage [2007/09/26(水) 14:13:45 ID:kfTmpMA+] echo $((59 -` date '+%M' | awk '{print $1}'` )) $((59 -` date '+%S' | awk '{print $1}'` )) これでもでけた!
220 名前:login:Penguin [2007/09/27(木) 18:47:27 ID:Qh1DP+hx] date,sleep, atは使い込めばラーメンタイマーも・・・・・・・いやなんでもない
221 名前:login:Penguin [2007/10/02(火) 23:24:08 ID:57QYWA2W] ほしゅ
222 名前:login:Penguin mailto:sage [2007/10/09(火) 18:07:07 ID:lJCQFIXV] モデムをオンフックにするのに 今のところcuを使って対話的にATH0を 送っているのですが、これを シェルスクリプト内で実行して 自動化する方法はありますか?
223 名前:login:Penguin mailto:sage [2007/10/09(火) 23:58:35 ID:rK7+VmTA] 対話的といえば expect ぐらいしか思いつかないな
224 名前:222 mailto:sage [2007/10/10(水) 19:31:25 ID:TchaYqjx] >>223 manを眺めましたが奥が深そうですね。じっくりと勉強してみます。 ありがとうございました。
225 名前:login:Penguin mailto:sage [2007/10/11(木) 00:25:04 ID:0rD2It5e] >>222 草の根BBSでもやるんかい?
226 名前:login:Penguin mailto:sage [2007/10/11(木) 02:33:49 ID:8ZTBNRII] モデムで思い出したが、ミャンマーで対外ネット回線が一時遮断されたって 報じてたじゃん。 こんなときにもなんとかなるよう在外公館にアナログモデムを常備してたりは しないだろうか。
227 名前:222 mailto:sage [2007/10/11(木) 06:32:06 ID:o32fDZEh] >>225 これまでCCT-98IIIのマクロで自動巡回してたんですが Linuxにしたら使えなくなるそうなので・・・・。 って、いやそうじゃなくて、vgettyで留守電のテストを やってたら回線をつかんだまま切れないことがあって それを切断させたいわけです。 >>226 自分はいざというときのためにジャストシステム製の 音響カプラ持ってます。(処分してないだけかも)
228 名前:login:Penguin mailto:sage [2007/10/11(木) 08:26:20 ID:A6nFaf5V] kermitをperlで操作するnifty4uというパッケージが、前世紀にあった。 NIFTY フォーラム自動巡回スクリプトなので、CCT-98な人には改造が容易かも。 ダイアルアップpppスクリプトを書けば済むんじゃないかと思うけど、やったことないから分かりません。。。
229 名前:login:Penguin [2007/10/11(木) 13:36:28 ID:wykYuUw8] #!/bin/bash cd /home/hogehoge というシェルスクリプトを作成し、実行してみても、移動でき ません。 ディレクトリを移動するにはどのようなスクリプトを書けばい いでしょうか?
230 名前:login:Penguin mailto:sage [2007/10/11(木) 13:41:47 ID:wNnhF+3E] >>229 シェルスクリプトとバッチファイルは違う。 シェルスクリプトはシェル内で動作する子プロセスだ。
231 名前:login:Penguin mailto:sage [2007/10/11(木) 13:44:37 ID:wNnhF+3E] >>229 >>230 一部訂正。 s/シェルスクリプトは/単純に実行したシェルスクリプトは/ 解決方法は "source" 。
232 名前:229 [2007/10/11(木) 14:10:15 ID:wykYuUw8] >>230 >>231 ありがとう。今手元に環境がないので明日試してみます。
233 名前:login:Penguin mailto:sage [2007/10/11(木) 18:43:47 ID:KODaF1AT] >>232 shell.sh がシェルスクリプトのファイル名だとして chmod a+x shell.sh で実行権限与えて shell.shがあるディレクトリで ./shell.sh したら移動するよ。
234 名前:229 mailto:sage [2007/10/12(金) 09:38:40 ID:EbLcx1Gh] >>231 sourceやってみたら無事cd出来ました。 >>233 やってみたけど、上手くいきませんでした。 お二方ともありがとうございました。
235 名前:login:Penguin mailto:sage [2007/10/12(金) 10:44:01 ID:7zE2B01m] シェルプロンプトにコマンド名を叩き込んで実行すると、 子シェル(sh,cshなど)が新たに作られて、その子シェルがスクリプトを実行する。 で、スクリプトが終わるとその子シェルもろとも消えて親シェルに戻ってくる。 だから、シェルスクリプト内でcdしたり、環境変数をセットしても、その影響は 子シェルの中にとどまって、スクリプト終了と共に消えてなくなる。 cshのsourceやshの.(ドット)は、子シェルを作らないで自分の中でスクリプトを実行する。 だからcdやsetenv、exportの結果が、起動した親シェルに反映される
236 名前:login:Penguin mailto:sage [2007/10/12(金) 11:22:55 ID:5+kNLqtp] . の他に alias とか関数使う手もあるよ。
237 名前:233 mailto:sage [2007/10/12(金) 17:40:09 ID:sUVuIX9s] >>234 ごめん!間違った。 ./shell.sh じゃなくて . ./shell.sh でした。 . を打って1個スペース空けて シェルスクリプトファイル指定。
238 名前:login:Penguin mailto:sage [2007/10/12(金) 17:46:35 ID:5+kNLqtp] >>237 なんで ./ を付けるの?
239 名前:login:Penguin mailto:sage [2007/10/12(金) 17:59:22 ID:+Kk0eMQd] Yeah!めっちゃホリデイ
240 名前:login:Penguin mailto:sage [2007/10/15(月) 14:50:05 ID:NjtHefoB] 特定のURLを一定時間に読み込むシェルスクリプトをつくりたいのです。 今のところwgetを使ってwget hogehoge をクーロンで動かす予定ですが もっとスマートなやりかたはありますか?
241 名前:login:Penguin mailto:sage [2007/10/15(月) 22:15:04 ID:yaqxWPIK] >>240 それでいいんじゃね?
242 名前:login:Penguin mailto:sage [2007/10/15(月) 23:35:58 ID:6xnjJ9Cn] >>241 じゃあ1分に1回よりも高頻度(30秒に1回とか、15秒に1回とか) やりたい場合はどうすれば?
243 名前:login:Penguin mailto:sage [2007/10/16(火) 00:24:31 ID:7lwU6GvW] アタックしたいのか?
244 名前:login:Penguin mailto:sage [2007/10/16(火) 01:36:38 ID:IhGBMLbJ] >>242 wget ...; sleep 30; wget ... するスクリプトを毎分実行するとか。
245 名前:login:Penguin mailto:sage [2007/10/16(火) 08:18:30 ID:a72PxkLH] >>243 アタックしたいわけじゃないですよ。 ただcronって最高でも1分に1回しか実行できないはずなので、それよりももっと短い間隔で 処理をさせたい場合とかどうするのかなぁとふと疑問に思ったもので。 >>244 なるほど・・。 しかし wget ... ; のところで1分ぐらい処理に時間がかかった場合 その後の sleep 30 ; がきて、そしてまた wget ... がくるから、タイミングと言うか場合によっては 30分に1回キッチリ実行されるとは限りませんね。31分かかって、その後実行されて 今度は29分後に実行されるみたいなズレ方はしますよね。
246 名前:login:Penguin mailto:sage [2007/10/16(火) 08:26:34 ID:IhGBMLbJ] >>245 バックグラウンドで実行するとか。 つーか、何分もかかる処理を30秒ごとに実行していいのか?
247 名前:login:Penguin mailto:sage [2007/10/16(火) 11:46:31 ID:wfMufGFC] cronはプロセスが無限増殖するのを抑えるために、同時実行数に制限があるので注意 Solarisだと、確か同時実行数が100個を超えるとそれ以降は時刻が来ても起動しなくなる LinuxだとOOMキラーが動いて刈り取られるかもしれん cronの起動間隔 ≒ プロセスの実行時間 となるような長めのプロセス、特に通信関係とかで長めのタイムアウトが発生しそうな プロセスをcronに仕込むときは、注意したほうがいい
248 名前:229 mailto:sage [2007/10/16(火) 13:58:23 ID:EtpWijek] 環境が手元にないもので、遅レスになってしまいすみません。 >>235 なるほどです。ありがとうございました。 >>236 ありがとう。aliasでも出来そうでした。 >>237 .の後に続けて入力したところ、うまくcdできました。 >>238 素人なのでよく分かりませんが、実行ファイルを実行するときに付けるんでは? それでは、みなさんありがとうございました。
249 名前:login:Penguin mailto:sage [2007/10/16(火) 14:09:44 ID:IhGBMLbJ] >>248 . shell.sh でもいっしょだよ。 やってみ。
250 名前:login:Penguin mailto:sage [2007/10/16(火) 17:45:32 ID:a72PxkLH] ./ を つけるのは カレントディレクトリのファイルを指定する為。 つけないと 環境変数 $PATH の中から該当する物が無いかを探してなかったら エラー返すので。 カレントディレクトリのファイルを指定する時にいちいち ./ をつけるのが面倒だからって $PATH に ./ も含めてしまうとセキュリティホールになるので やらないでね。
251 名前:login:Penguin mailto:sage [2007/10/16(火) 17:50:59 ID:IhGBMLbJ] >>250 >>249
252 名前:login:Penguin mailto:sage [2007/10/16(火) 18:39:11 ID:tU6zGUOB] シェルスクリプトで端末の現在の行数を得るにはどうしたらいいですか
253 名前:login:Penguin mailto:sage [2007/10/16(火) 19:18:04 ID:iHfKM46h] stty -a とかかな。
254 名前:login:Penguin mailto:sage [2007/10/16(火) 19:45:06 ID:tU6zGUOB] >>253 情報ありがとうございます。 行数を表示するだけでなくて、 シェルスクリプトの中で行数を変数に格納して、 なんらかの処理を行いたいと思っているのですが 何かうまい方法はありますでしょうか
255 名前:login:Penguin mailto:sage [2007/10/16(火) 21:12:10 ID:pdm4T3SF] >>254 ROWS=`stty -a | tr ";" "\n" | grep rows | sed "s/.*rows //"`
256 名前:login:Penguin mailto:sage [2007/10/16(火) 21:36:05 ID:tU6zGUOB] >>255 できましたありがとうございました。
257 名前:login:Penguin mailto:sage [2007/10/16(火) 23:32:43 ID:sWAUZpv3] $LINES じゃだめなの?
258 名前:login:Penguin mailto:sage [2007/10/17(水) 04:58:42 ID:d5Vjha9K] シェルスクリプトの中で$LINESがとれるとでも?
259 名前:login:Penguin mailto:sage [2007/10/17(水) 10:00:57 ID:9KXOUzKW] ROWS=`tput lines` COLS=`tput cols`
260 名前:login:Penguin mailto:sage [2007/10/17(水) 22:15:42 ID:VuOM9tU/] eval `resize` echo $LINES $COLUMNS
261 名前:login:Penguin mailto:sage [2007/10/18(木) 12:39:19 ID:fyMSNeWa] >>260 resize は X がインストールされていない環境では使えない。 xterm の付属物なので。
262 名前:login:Penguin [2007/10/23(火) 17:14:39 ID:OMh5qn/O] ちょっと相談に乗ってください。 日付.pc名.サイト名_access_log ex) 20071023.pc-local01.hoge_access_log 20071023.pc-local02.hoge_access_log 20071023.pc-local01.hagehoge_access_log 20071023.pc-local02.testhoge_access_log と言うログファイルをサイト名別のフォルダに移動した後 1つのログファイルにマージさせるスクリプトを書きたいのですが。 とりあえず、スクリプト書いてみたのですが正直何がなんだか 分かりません。アドバイスを下さい。 #!/bin/sh timestamp=`date +%Y%m%d` log=`find /home/hoge/log -name $timestamp.*` list=`echo "$log" | sed -e 's/_access_log//g' | cut -c57-` スクリプトでは、今日のタイムスタンプを取ってlogファイルを検索し その結果のサイト名以降の”_access_log”を消して、サイト名より前 も入らないので、表示させないようにする。これから、サイト別にフォルダを 作ってそこに移動させるのですが、mkdir "$list"では上手く行きません。 何かいいアドバイスを教えてください。よろしく御願いします。
263 名前:login:Penguin mailto:sage [2007/10/23(火) 17:19:48 ID:4jX2ZQqu] >>262 cut -c57- ってのは何?
264 名前:login:Penguin mailto:sage [2007/10/23(火) 17:20:31 ID:XqFIvlF4] >>262 シェルスクリプト以前の話だな。 まずは最終的に何をやりたいのかをはっきりしろ。
265 名前:login:Penguin mailto:sage [2007/10/23(火) 17:26:06 ID:4jX2ZQqu] >>262 $log にたくさんファイル名が入ってるのに echo $log をいじろうとするのがよくわからんな。 >>264 まずは日本語の勉強からだな。
266 名前:login:Penguin mailto:sage [2007/10/23(火) 17:50:56 ID:OMh5qn/O] >>263 サイト名だけの文字を取りたかったので、cut -c57- としました。 >>264 申し訳御座いません。 ログファイル名からサイト名だけを文字を取り出して、取り出した文字 (サイト名)のフォルダを作って、作ったフォルダにそれぞれログを 振り分けてログファイルをマージさせたいです。 これで、少しは伝わりますでしょうか? >>265 $logの結果からサイト名の文字だけ取りたかったので、echo $logを いじっています。
267 名前:login:Penguin mailto:sage [2007/10/23(火) 18:08:13 ID:XqFIvlF4] >>266 プログラミングの論理部分を勉強したほうがいい。 「やりたいこと」と「実際のスクリプト」の間には 「ロジックを組み上げる」作業が必要になるが、 君はこの部分について全く理解できていないようだ。 まずは 「findで検索したファイルの一覧はどういう形で変数logに入っているのか」 「その変数logに対して繰り返し処理を行なうにはどうしたらよいか」 を調べてくるべし。
268 名前:login:Penguin mailto:sage [2007/10/23(火) 18:09:14 ID:4jX2ZQqu] そもそも find でうまくいかんな。
269 名前:login:Penguin mailto:sage [2007/10/23(火) 18:17:19 ID:OI+rqPpl] >>262 find . -type f -printf %f\\n|awk -F. '{gsub(/_access_log/,"",$3);print $2 "." $3}'|uniq >hostlist for i in $(cat hostlist);do mkdir $i;done あとawkで同じように cp 20071023.pc-local02.testhoge_access_log pc-local02.testhoge のようなlist作って実行
270 名前:login:Penguin mailto:sage [2007/10/23(火) 18:18:51 ID:OMh5qn/O] >>267 アドバイスありがとうございます。 正直、インフラ担当なのでプログラムさっぱりです(;´Д`) とりあえず、ググって調べてみます。 >>268 もう少し調べてから、スクリプト書き直します。 ありがとうございました。
271 名前:login:Penguin mailto:sage [2007/10/23(火) 18:20:53 ID:OMh5qn/O] >>269 ありがとうございます。 参考にさせて頂きます。とりあえず、スクリプト周りを調べて 書いてみます。
272 名前:login:Penguin mailto:sage [2007/10/23(火) 18:25:49 ID:4jX2ZQqu] #!/bin/sh cd /home/hoge/log for i in `date +%Y%m%d`.*; do dir=`echo $i | cut -f2 -d.` [ -d $dir ] || mkdir $dir mv $i $dir done ファイル数が多過ぎるとかヘンなファイル名とかは知らね。
273 名前:login:Penguin mailto:sage [2007/10/27(土) 10:44:25 ID:mm4VeEeL] IPアドレスを16進に変換したいです。 どうやりますか?
274 名前:login:Penguin mailto:sage [2007/10/27(土) 13:17:13 ID:D/VUEDKM] echo '192.168.0.1' | gawk -F. '{printf("%02x%02x%02x%02x\n", $1, $2, $3, $4)}'
275 名前:login:Penguin [2007/10/27(土) 13:26:52 ID:QMQXG4ov] >>274 俺のIPサンプルに使うなよ。晒されたら攻撃の的になるだろうが(´・ω・`)
276 名前:login:Penguin mailto:sage [2007/10/27(土) 13:35:53 ID:6kGxUA5U] >>274 ありがとうございました。
277 名前:login:Penguin mailto:sage [2007/10/27(土) 14:33:40 ID:NSYPc3Nw] >>275 ネットに繋がらないと思ったらお前のせいかー! 早く俺のIP返してくれよ(´・ω・`)
278 名前:login:Penguin [2007/10/27(土) 15:34:59 ID:XQQiaIjq] >>275 そうか、そんなにお望みなら今から的にしてやるよwww タシロ砲とブラスターとあと手持ちの攻撃ツールの標的IPを全部セットして攻撃開s
279 名前:login:Penguin mailto:sage [2007/10/27(土) 19:24:46 ID:OFawlVSO] 俺のIPは127.0.0.1だから攻撃するなよ
280 名前:login:Penguin mailto:sage [2007/10/27(土) 21:20:28 ID:jIwdHtQL] ひどいネタスレと化してるなココwwwwww
281 名前:login:Penguin mailto:sage [2007/10/29(月) 10:48:36 ID:AXA/ueYo] 俺のIPは172.31.0.1だぞ。
282 名前:login:Penguin mailto:sage [2007/10/29(月) 10:55:37 ID:PqFYrP+5] もういいよ。
283 名前:login:Penguin [2007/10/29(月) 11:01:37 ID:F/RFN0ba] 俺のIPは203.・・・・ いややめとく
284 名前:login:Penguin mailto:sage [2007/10/29(月) 18:16:52 ID:lN+2vPd7] じゃあオレも1個 オレのIPは 169.254.88.24だぞ。
285 名前:login:Penguin mailto:sage [2007/10/29(月) 20:28:52 ID:vqPZDaQA] あ、思い出した。 255.255.255.255 -> 0xffffffff のように、IPv6表記を16進表記に変換する手続きを考えてくだちい。 f000::1 -> 0xf0000000_00000000_00000000_00000001 ("_"は不要) ff::169.254.88.24 -> 0x00ff0000_00000000_00000000_a9fe5818
286 名前:login:Penguin mailto:sage [2007/10/29(月) 23:28:48 ID:Hdkrl+3D] 完全に他人まかせだなぁ。 > ruby -rsocket -e 'p Socket.gethostbyname("ff::169.254.88.24")[3].unpack("C16").map{|c|format "%x",c}.join' "00ff00000000000000000000a9fe5818"
287 名前:login:Penguin mailto:sage [2007/10/30(火) 21:40:02 ID:Hmkhn1Qf] あー、目鱗。 gethostbyname()等を使えばいいのか。
288 名前:login:Penguin mailto:sage [2007/11/06(火) 00:15:33 ID:vKEt0xzk] あるコマンド(hoge)の結果が・・・ (カラム位置) [col1 col2 col3 col4] (コマンド出力) 0001 0002 * 0004 である場合にこの結果をset `hoge`で受けた場合、位置変数 $3に「*」が入ってくるようにbashのスクリプトを作成したい のですが現状ではどうやってもカレントディレクトリ配下の ファイル一覧が入ってきてしまいます。 何か良い手がありましたら教えて下さい。
289 名前:login:Penguin mailto:sage [2007/11/06(火) 00:55:19 ID:M5wBEVHJ] "`hoge`"
290 名前:login:Penguin mailto:sage [2007/11/09(金) 03:25:37 ID:r4+4tELy] >>289 オイオイ!w マジレスすると $ set -o noglob じゃないの
291 名前:login:Penguin mailto:sage [2007/11/09(金) 06:12:20 ID:BEUM5jSj] >>300 zenity を使うとシェルスクリプトで手軽な GUI が作れるぞ
292 名前:login:Penguin mailto:sage [2007/11/09(金) 08:21:31 ID:kDM6jkym] ttp://www.google.co.jp/search?hl=ja&q=zenity でトップに出て来るページは、もしかしてケンカを売ってますか? >最新のGnomeデスクトップを使っていても古いUnixユーザーはすぐにターミナルエミュレータを開いてしまいがちです。
293 名前:login:Penguin mailto:sage [2007/11/09(金) 12:05:22 ID:ei55nGr2] 文章全体から見てポジティブな物言いだと思うが...
294 名前:login:Penguin mailto:sage [2007/11/10(土) 01:20:06 ID:5ErO5tFm] zenity の使用例: jpg と mp3 をあわせて avi を出力するスクリプト 音声ファイルをビデオホスティングサイトに投稿時に使用 ==================================== #!/bin/sh # mp3jpg2avi.sh JPG_FILE=`zenity --title="JPG ファイルを選択してください" --file-selection` MP3_FILE=`zenity --title="MP3 ファイルを選択してください" --file-selection` zenity --title="質問" --question --text "変換開始しますか?" if [ $? = 0 ]; then ffmpeg -shortest \ -loop_input -f image2 -i $JPG_FILE \ -i $MP3_FILE \ -sameq output.avi fi ====================================
295 名前:login:Penguin mailto:sage [2007/11/10(土) 09:47:24 ID:9Zj/zooJ] >>292 Linuxから入った人だけど、Gnomeなんてマルチウインドウ端末エミュレータ支援ソフト西か見えません
296 名前:login:Penguin mailto:sage [2007/11/10(土) 11:07:23 ID:vw7Wu+HW] マルチウインドウ端末エミュレータ支援ソフト西やら マルチウインドウ端末エミュレータ支援ソフト力石やら マルチウインドウ端末エミュレータ支援ソフトホセ=メンドーサやら知らん。