Subscribed unsubscribe Subscribe Subscribe

64通りのkamipoを出力する

発端 @Kamipo2014-04-22 21:06:52 via Twitter for Mac to @kamipo @sugyan2014-04-22 21:06:57 via YoruFukurou to @sugyan @KAMIPO2014-04-22 21:10:34 via Twitter for Mac to @kamipo @kamipO2014-04-22 21:10:59 via Twitter for Mac to @kamipo @kamIp…

10種類の記号で書くPerlワンライナーの作り方

java-ja温泉にて、Pythonのワンライナーがキモいという話が出ていて、Perlだってこれくらいキモいの書けるよ!とアピールしてみた perl -e '""!~("(?{".("{^(?)!(?^{^^!){.^^~~?}{!~}^}^.(!~}!..^^!~}!~~.~^}"^"^}((~))~~^{.{^~?}^!^}(~{^)?()^)^!).^}!()){.…

Twitterのfollowerをlistに追加するワンライナー

140文字以内に収まるように頑張った結果 perl -MNet::Twitter -e'$t->add_list_member(sugyan,listname,$_)for@{($t=new Net::Twitter traits,[API::Lists,Legacy],netrc,1)->followers_ids}'add_list_member に渡す引数(上記では sugyan, listname)はハード…

2つのアカウント両方をフォローしているユーザーを数えるワンライナー

@zerna_botと@zenra_bot2の、両方をフォローしているユーザーはどれくらいいるのかと、ふと気になったので久々にワンライナーを書いてみた。 現時点でのそれぞれのフォロワーは $ perl -MNet::Twitter -le 'print Net::Twitter->new->show_user("zenra_bot")…

全裸bot2はワンライナーでも動く

かもしれない。あんまり検証はしていない。 参考文献 Cronを使わずに動く「全裸bot2」を作った - すぎゃーんメモ Perlスクリプトをワンライナー化するモジュールAcme::OneLinerを作ってみた - すぎゃーんメモ

Twitterでの自分の発言が1つだけおかしな時間になっている件

$ perl -MJSON -MLWP::Simple -le 'print$$_{created_at}for@{from_json(get"http://twitter.com/statuses/user_timeline/sugyan.json?since_id=4860000000")}' Thu Oct 15 11:33:40 +0000 2009 Thu Oct 15 11:29:55 +0000 2009 Thu Oct 15 11:19:49 +0000 2…

全裸botからみたタイムライン

全裸botはタイムラインの早さに合わせて呟く - すぎゃーんメモという実装はしてみたものの、実際どれくらいの頻度になるのであろうか? 一日の活動をザクッと洗い流してみた。 まずは@zenra_botが@付きの発言(3時間毎の独り言を除外)をしている時間をすべて…

最終行だけ表示するPerlワンライナー

最終行だけ表示する Perl ワンライナー - ablog eofっていうビルトイン関数があるんですね。知りませんでした >< 自分だったら後置if文が好きなので、こう書く perl -ne 'print if eof' hoge.log 変態的に書きたいときはこんなカンジでw perl -pe '$\=$_}…

ワンライナー化モジュールAcme::OneLinerを更新

Perlスクリプトをワンライナー化するモジュールAcme::OneLinerを作ってみた - すぎゃーんメモで作成した、Acme::OneLinerを、アップデートしました。 GitHub - sugyan/Acme-OneLiner: ワンライナー生成モジュール 今回の変更は、モジュールのuse宣言をコマン…

load averageを時系列で可視化するワンライナー

perl -le 'sleep 1 and print "|" x (100 * `sysctl -n vm.loadavg | cut -d " " -f2`) while 1'

1行自己紹介ふたたび

マジカルインクリメントによる文字列操作 - すぎゃーんメモ なんか変なの思いついたのでメモ。 perl -le'($_||=ref\0)++while$-++<~0/515+65;print+lc'64bit環境だとダメか?

七色のワンライナー

perl -e'printf"\e[%dm%s\e[m%c",30+rand 8,chr 32+rand 95while 1'実は8色つかってるけど。 こんだけ。 追記 4年半の時を経て、改良のアドバイスいただきました。 すぎゃーんのやつ、xterm-256 に対応させたほうが色鮮かだしモテるとおもいます perl -e'pr…

Perlスクリプトをワンライナー化するモジュールAcme::OneLinerを作ってみた

GitHubにおいてます。 GitHub - sugyan/Acme-OneLiner: ワンライナー生成モジュール たとえばhello.plというスクリプトを用意して #!/usr/bin/perl use strict; use warnings; print 'Hello world!', "\n"; Acme::OneLinerをuseして実行すると、ワンライナー…

円周率の近似値となる分数を算出するワンライナー

ちょっと思うところあって"355/113"のような円周率に非常に近い値を表せる分数はないかと思って、それらを求めるワンライナーを考えてみた。 perl -MMath::Trig -le '($a=$_*pi)=~/\.(0{4}|9{4})/ && print int$a+$a=~/\.9/," / $_" for 1..100000'for文で探…

svn diff をカラフルに表示させるワンライナー

Gitで、 [color] ui = autoの設定をしているとdiffしたときに追加部分が緑、削除部分が赤で表示されるようになっていて、結構気に入っていた。 けどSubversionではどうやるのかよく分からない。ので自分で書いてみた。 svn diff . | perl -pe 's/^([-+]).*$/…

twitter で 60 日以上発言が無い人を remove する ワンライナー を作る

twitter で 60 日以上発言が無い人を remove する - Djangoへの片思い日記 僕自身はFollowはまだ200人弱で、全然制限に引っかからないので困らないのだけど、面白そうなので自分でも書いてみる。 まずはAPIの選定。 http://watcher.moe-nifty.com/memo/docs/…

アジア美人のか〜わいいポーズの画像をひたすら集めまくってみるワンライナー

これを1行と呼んでいいのかどうか、はともかくとして。 perl -MWeb::Scraper -MURI -le'do{map{print}@{($r=scraper{process"#home_left img","i[]","\@src";process"span.pages",p,TEXT}->scrape(URI->new("http://asianposes.com/category/pose/".($n?"pa…

ハノイの塔ワンライナー

「とべとべ」で拝見しました、ハノイの塔。 http://tobe-tobe.kwappa.net/wiki/?event%2F2009-06-03%20vol.4 Perlで書くとどんなカンジに?と調べてみると以下のものを発見。 Hanoi: Perl じゃあとりあえずコレをワンライナーにしてみよう、と少々の改造を加…

最大公約数ワンライナー

お題:自然数で与えられる引数の、最大公約数を出力する。 CPANモジュールを使用する Acme::Toolsにgcd関数が入っている。 $ perl -MAcme::Tools -le'print gcd@ARGV' 111 185 37 Math::Numbersモジュールだとnewに突っ込む形になる。 $ perl -MMath::Number…

反転ワンライナーいろいろ

引数の順番を反転させる @ARGVを素直にreverseさせると、こうかな。 $ perl -le 'print for reverse @ARGV' hoge fuga piyo piyo fuga hoge改行させたくないなら $ perl -le 'print join " ", reverse @ARGV' hoge fuga piyo piyo fuga hogeが普通だろうか。…

1以上100未満の『2個の素数の積』である整数をワンライナーで列挙する

from 素数だの積だのよくわかんねっちゃ - 牌語備忘録 -pygo CPANモジュール使ってしまうと、こうかなぁ。 perl -MMath::Big::Factors=factors_wheel -le'map@{[factors_wheel$_]}-2||print,1..99'$ perl -MMath::Big::Factors=factors_wheel -le'map@{[fact…

1 分置きにニコニコ動画の再生数を表示するワンライナー

ワンライナーと聞いて。 ニコニコ動画がもうすぐ 100 億再生! - IT戦記 PHPで、 1 分置きにニコニコ動画の再生数を表示するワンライナー - 肉とビールとパンケーキ by @sotarok 目的を果たすだけなら…と、Twitterに発言できるくらいの短さを目指して頑張っ…

17歳教ワンライナー

いちおう思いついたものを書いておく。 何ヶ月と何日、はDate::Calcモジュールでは簡単には出せなそう。 $ perl -MDate::Calc=:all -e'$ARGV[0]+=17;printf"17歳と%d日$/",Delta_Days@ARGV,Today' 1982 12 10 17歳と3428日 追記:月と日 やっぱりDateTimeモ…

Perlの組み込み関数をワンライナーで取得する

perldoc perlfuncで見られるわけだから、それを解析すればいいかな、と、こんなヘボいワンライナーを書いた。 grep "=item" $(perldoc -l perlfunc) | perl -alne '$a{$&}++ if $F[1]=~/^[a-z]*/; END { print for sort keys %a }'そのあとで調べてみたら、…

任意の金額をちょうど支払うための最小硬貨枚数を計算するワンライナー

0〜999円の買い物に対して、釣り銭の無いよう支払うためには硬貨が最低で何枚必要か、という問題を考える。 最初に考えたものは、 perl -le'$a=pop;$a-=$_*($:=int($a/$_)),$b+=$:for(500,100,50,10,5,1);print$b'というもの。 $ perl -le'$a=pop;$a-=$_*($:…

Django Hack-a-thon Disc.8に参加してきた

先々週のGAE Hack-a-thonに引き続き、2回目のhackathon参加。 http://twisted-mind.appspot.com/django-ja-hack-a-thon-disc-8/ http://bitbucket.org/voluntas/django-ja-hack-a-thon/src/tip/disc-8.rst 自分はハンズオンBで、id:everesさんに教えていた…

sort関数を使って配列をシャッフルする

sort関数の比較操作をワンライナーで可視化してみた - すぎゃーんメモに続き、sort関数ネタ。 なんとなく、sort関数のBLOCKを出鱈目にすればshuffle的なことが出来るんじゃないのかな?と思いついて。 やっぱり既にそういう考え方はあるようで。 配列をラン…

sort関数の比較操作をワンライナーで可視化してみた

Perlのsort関数は sort BLOCK LIST というようにBLOCKを指定すると、そのBLOCK内部で$aと$bという変数同士の比較方法を指定することができる。 なので、そこにprint文を埋め込んでしまえば、sort関数の中で「対象となるLISTのどの要素とどの要素が比較されて…

年齢確認ワンライナー

perl -MDateTime -le 'print+(DateTime->now - DateTime->new(day,pop,month,pop,year,pop))->years' <year> <month> <day>$ perl -MDateTime -le 'print+(DateTime->now - DateTime->new(day,pop,month,pop,year,pop))->years' 1982 12 10 26私は現在26歳です</day></month></year>

ワンライナーでモジュールの色んな情報を調べる

CPANでinstallしたモジュールを調べる ExtUtils::Installedを使うと調べられるらしい。 perl -MExtUtils::Installed -le 'print for ExtUtils::Installed->new->modules'ついでにバージョンも調べることができるらしい。 perl -MExtUtils::Installed -le '$x…

指定ディレクトリ以下のファイルサイズの合計を取得するワンライナー

あるディレクトリ以下にあるファイルのサイズの合計を知りたいとき。 MacならFinderから右クリック→「情報を見る」で知ることはできるのだけど、コマンドから知ることはできるのだろうか?と調べてみた。 ディレクトリ中のファイルサイズ合計値を バイト表示…

閏年判定ワンライナー

久々のワンライナーネタ。 http://d.hatena.ne.jp/minsaa/20090406/1238987334を読んでて思いついたので。 以下、グレゴリオ暦を使うという前提で。 条件分岐を連ねるならPerlでは三項演算子かな?閏年のときだけ1を返すようにしてみた。 perl -le 'print +(…

フィボナッチ数ワンライナー

これは自分ではなかなか思いつきそうにない。 Rubyがわからない - Cozy Ozy より $ perl -le'print$a+=$!=$a-$!for--$!..-2+pop' 10 1 1 2 3 5 8 13 21 34 55 NMTnet|404 Not Found エラー より $ perl -le'print$"=($a+=$")-$"for++$a..pop' 10 1 1 2 3 5 …

Perlの順列生成ワンライナーを考える

例題: 同じ数字が2回以上現れない、4桁の数字を羅列する(最上位桁が0でもOK) …というのを考える。 その個数は、順列 から求められるので、この場合は10×9×8×7=5040個の数字列が現れることになる。 順列を生成するスクリプト では実際に5040個の数字列を…

はてブの被ブックマーク件数の合計を取得するワンライナー

perl -MXMLRPC::Lite -le'print XMLRPC::Lite->proxy("http://b.hatena.ne.jp/xmlrpc")->call("bookmark.getTotalCount",pop)->result;'引数にURLを指定。 指定したURLでの、全体の合計被ブックマーク件数が取得できるらしい。 $ perl -MXMLRPC::Lite -le'pr…

16進数のテーブルを表示するワンライナーを考える

以下のような256個の16進2桁の数値を一覧表示したい、とする。 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F 20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F 30 31 32 33 34 35 36 37 38 39 3A 3B …

16進数のテーブルを表示するワンライナーを考える まとめ

16進数のテーブルを表示するワンライナーを考える - すぎゃーんメモのまとめ。追記しまくって長くなったので整理する。 ()内はperlコマンドも含めた文字数。 (52)最もオーソドックスにfor文を回して文字列連結する方法 perl -le'for$i(@a=(0..9,A..F)){print…

コミッタ毎のコミット数を集計するワンライナー

$ svn log | grep ^r[0-9] | perl -MYAML -anle '$h{$F[2]}++;END{print Dump\%h}'別にYAMLのDumpじゃなくてData::DumperのDumperを使ってもよい。

モンテカルロ法で円周率を求めるワンライナー

何故か円周率ネタの続き。 簡単なのだったらワンライナーで書けるかなーと思って。 $ perl -le '(rand)**2+(rand)**2<1&&$x++for 1..($n=100000000);print$x*4/$n' 3.14167476この回数で実行に1分くらいかかって精度は3〜4桁程度。ふむー 追記 収束してい…

何かの画像をワンライナーとか何かで取得する

もしも、世界のどこかに毎分ごとに"HHMM.jpg"の形式で1440枚の画像ファイルが公開されていたりしたら、一気に取得したくなりますよね! そんなときにはワンライナーでサクっと取ってしまいましょう。 $ for i in $(echo 0{0..9}{0..5}{0..9} {10..23}{0..5}{…

美人時計の画像ファイルを平和的に取得する

美人時計の画像ファイルをワンライナーで取得する - すぎゃーんメモと同様、 この記事は削除しました。 メモしておきたいのは、 wgetで待ち時間を指定できるということ、 $ wget --help ...(略) ダウンロード: ...(略) -w, --wait=SECONDS ダウンロード毎に …

美人時計の画像ファイルをワンライナーで取得する

この記事は削除しました。 メモしておきたいのは、 zshを使えばゼロパディングしてブレース展開できるらしい。ということ。 % echo {00..12} 00 01 02 03 04 05 06 07 08 09 10 11 12

Sierpinski triangleワンライナー その3

Sierpinski triangleワンライナー その2 - すぎゃーんメモの続き。 Combination(n, m)が奇数になるための必要十分条件について 組合せ (数学) - Wikipediaより というように、とを二進展開したとき、 であることがが奇数であることの必要十分条件になってい…

Twitterで指定したIDの投稿日時を取得するワンライナー

webで見る限りでは1日以上経たないと"〜時間前"などアバウトな時間で、1日経ったあとでも分単位でしか表示されない。 でもそれぞれの発言はURLにstatusのIDが振られているので、そのIDを使えば秒単位までの正確な時間はAPI経由で取得できる。 $ perl -MDat…

Sierpinski triangleワンライナー その2

Sierpinski triangleワンライナー - すぎゃーんメモの続き。 アルゴリズムの意味を自分なりに汲み取って書き換えてみた。 $ perl -le 'print map { ~$n & $_ ? "." : "#" } 0..($n = $_ - 1) for 1..2**pop' 6 # ## #.# #### #...# ##..## #.#.#.# ######## …

GenesisLightningTalks発表順ワンライナー(?)

$ perl -MLWP::Simple -MEncode -C2 -le'print decode"euc-jp",splice@a,rand@a,1for 1..(@a=get("http://wiki.somethingnew2.com/lt/index.php?Events%2F2009%2F02")=~m|style_table.*?((?:<tr>.*?</tr>){8})|&&map{s|<.*?>||g;$_}grep{!($a++%8-1)&&$b++}$1=~m|<td.*?>.*?</td>|…

Sierpinski triangleワンライナー

perldoc Acme::EyeDrops から引用。 こういう図形のことはしっていたけど、こういう名前だったのか。 シェルピンスキーのギャスケット - Wikipedia $ perl -le '$x=2**pop;print$"x--$x,map$x&$_?$"x2:"/\\",0..$y++while$x' 4 /\ /\/\ /\ /\ /\/\/\/\ /\ /\…

1行自己紹介

$ perl -le 'print $~^" !#64:"'どうせ反則ならこれでいいかw

マジカルインクリメントによる文字列操作

$ perl -le '$~++for 0..515937;print lc$~'というのを一行自己紹介として使ってみるというのはどうだろう。 '$~'をSTDOUTとして使うのは反則かな。 追記 こんなのとか? perl -le '($_||="\163"x6)++while$a++<706623;print' 変なところから文字列を持って…

ワンライナー記号化スクリプトを書いた

何かの拍子にこの記事を見かけてしまい、衝撃を受けた。 2006-11-07 - 兼雑記 Perlってこんな変態プログラムが書けてしまうのか…!!と。 記号だけでプログラムが書けてしまうとは全然知らなかった。 何度も読み返してようやく理解した範囲では、 拡張正規表…