"perl(無料)タグ投稿記事"

Perl One Liner

1 28、2009 / / alexken作成/ / 技術 / / No Comments

主にわざがテキストを持ってジョムルラク距離はだろう、
Unixでfind、sed、awkを組み合わせてオジガン閑居は
bash / perl / ruby​​まで行かずに処理しているが、

ファイルを開いて、変更して、再保存するには、openしたファイルとsaveするファイルが同一なので、
パイプ(|)を使用してtmpファイルを作成していますが、
find-execの中のパイプを使うことができなくてこのような時は、perl one linerが適当である。

よく使うPerl one liner。

find。 -name "file *"-exec perl-i-pe 's | BEFORE | AFTER | g' {};

その他のperl one liner
リンク1リンク2

[ruby] ruby没頭校ユクジュン...

5 14、2008 / / alexken作成/ / 技術 / / No Comments

会社の業務では、用途に応じて、主に、さまざまな言語を使用して、
一度使ってかどうか、簡単な処理は、主にperlを使用する。
主にすることがUIが必要なく、
主にUnix環境なのに加え、
textの処理がほとんどだとregula expressionが強力で、perlこそ非常に資格がある。

rubyとは言語を最初にジョプハンゴン1999年に日本で勉強する時だ。
自然言語処理研究室なのでそこ駅でtextの処理がほとんどである。
ruby勉強していた人間も数あったが、ただの趣味であるだけ、
実用的な面では、その研究室さえperlだった。

だから私はperlをそこで学び始めた。
Unix + Emacs + Perl。

そうだったrubyが数年前からあまりにも流行なので、私も勉強してみ業務にも適用してみたかった、
チーム秒高perlウクが2人も(noise&gogma)の風
一人だけでrubyのコードを量産することができなくて、私も身近で誰もがみんな知っているperlが主流であった。

最近、この二人を誘って、Rubyの勉強開始。

浮気のに何オリョウンゴなかった。
ファンデサンさんの20分のガイド一回見せたところ、
まさにルビー信徒に変身​​...

会社の図書館にある "Programming Ruby"をことごとく借り​​も勉強中。

ところで一体大まかに読み取ることができない。

行ごとの意味をゴプシプウニ非常に幽玄であること。
特に文法の設計が非常に芸術である。

以前のシン君と一緒メッセンジャーでちょっと交わし、Code Blockと一緒Meta Programmingがなぜ必要なのか、なぜ使うべきか理解ができなかったが、
イゴトチャムものである。

今のところRubyの話でブログが砲撃ドゥェルコだ。

iPod touchのインストール容量を確保

1 8、2008 / / alexken作成/ / 技術 / / 3 Comments

iPod touchをjail breakしナンフBSDSubsystem万ぽつんと敷き、sshで接続後dfしてみると塀だ。

#df
Filesystem 1K-blocks Used Available Use%Mounted on
/ dev/disk0s1 307200 278396 25732 92%/
devfs 15 15 0 100%/ dev
/ dev/disk0s2 7622368 28144 7594224 1%/ private / var

つまりapp + os用に割り当てられたパーティションは、すでに92%も詰まっている。
そしてperlなどinstallerに敷くと100%インストールにならない。

故に解決策は、

cd /
mv Applications / private / var
ln-s / private / var / Applications Applications

しなければならtouch用アプリを存分に使えるようになる。
foo_1.png

ここ(ニャーイニム)で、より多くのスペースを確保するためのヒントです。

iPod touch 1.1.2タルオクギ

1 8、2008 / / alexken作成/ / 技術生活 / / 2 Comments

alexkenの新しいおもちゃ
10月のコロラド州チュルジャンテapplestoreでiPod touchを買った。
iPhoneとtouchの間で1時間を超えて悩んでから、カメラは別に必要がなく、電話は廃止さで、bluetoothのために10万ウォンという巨額の天秤してからbluetoothになってもkeyboardは、使用することができないという理由でtouchにした。

ライオンごとに1.1.1 jailbreakして楽しんできてよく使っていた、ある日偶然にiTuneが1.1.2にオプグルするのかというメッセージにムシムゴOK。
すぐにのっぺりしているオリジナルtouchで復帰後一ヶ月以上を押し込めておいて使用していないが、最近の再あれこれインストール後、ポータブルブラウザ+おもちゃに使用中...

網の文章がWindowsベースなので、もう一度整理した。
1。 iPod touchの終了
2。 スリップ+ホームボタンを押したまま10秒後スルリプボトゥンマン解除
3。 レスキューモードでiTunesを実行
4。 option +復元をクリック(Windowsはshift +復元をクリック)
5。 〜/ Libraries / iTunes / iPod Software Updates /にバックアップされている1.1.1のイメージで復元
6。 iPodでsafari実行後http://jailbreakme.comでInstallerをインストール
7。 InstallerにTweaks(1.1.1)の中にあるOktoPrepインストール
8。 iTunesで1.1.2にアップデートした後iTunesを終了

9。 1.1.2用jailbreak download後にあるjailbreak.jarダブルクリック
(http://conceitedsoftware.com/iphone/site/112jb.htmlからダウンロード)
jail2.png
10。 http://codedesign.tistory.com/16でハングル入力システムのインストール
(二度の再起動を忘れないで守らなければならない - これのせいで復元のみヅボンハム。)
10。 http://repo.us.toでiPhone用のプログラムをインストールする
11。 Unix subsystemをインストール
12 iPod touchのインストール容量を確保のグルデロ設 ​​置スペースの確保
13。 Perlのインストール
- Installerでperlのインストール(PATHに大祭として追加されないんじゃ同じ。)
- sshで接続
- vi / etc / profileでPATH opt / iphone / binを追加

*レンガの復旧方法:http://blog.kimtree.net/19
もっと見る>>

3n +1

1 10、2007 / / alexken作成/ / 技術 / / No Comments

イジョングル(messierページにtype icon表示追加)を上げたところallblog同じカテゴリblog articleで3n + 1問題のコーディングが上がってきて好奇心でperlで組んでみた。

円の問題についてhttp://acm.uva.es/p/v1/100.html

無知に簡単に見えるためにタイトルまでは理由が何か気に好奇心で組んでみた。
さらに、本当に簡単に見えるこの問題は過度のNP問題というのがまたそうだった。

私の効いたperl codeは次の通り。 (絞りデヤ入力時間1分がかかりましたが、円の問題を何度もじっくり見ながら英語の解釈には少し時間がかかった。やすいデムビョトジマン、内容の深さはそれほど簡単な事ではなかった。)

#!/ usr / bin / perl
use strict;

$) { sub three_n_plus_one($){
$n ) = @_ ; my($ n)= @ _;
. " " ; print $ n "";
if $n == 1 ; exit 0 if $ n == 1;

$n % 2 == 1 ) { if($ n%2 == 1){
* $n + 1 ) ; three_n_plus_one(3 * $ n + 1);
{ } else {
2 ) ; three_n_plus_one($ n / 2);
}
}

sub main(){
) ; three_n_plus_one(22);
}

main();

問題の特徴は:

  • 家:自然数を与えると、必ず終わる。
  • 簡単に見えるアルゴリズムもかかわらず、この仮定が事実なのかは知られていない。(まだ??永遠に...)
  • 0 <n <100万の間では、その方が知られています。

これだけ??...

複数の数値を入れてみると、円文のように、
... 5 16 8 4 2 1に収束してクトナギン終わった。

参考までに、入力が1,000,000,000,000,000であったとき
結果は、

もっと見る>>

PerlでGetopt :: Stdを使用する

8 30、2006 / / alexken作成/ / 技術 / / No Comments

Unixスタイルのプログラムパラメータの処理をしてくれるモジュールがGetoptなのに
頻繁に使用してみるとcodesnipetに使用しようと、私が使用するテンプレートをここに登録しておく。

main :: HELP_MESSAGE()、main :: VERSION_MESSAGE()

を実装しておくと - help、 - versionオプションに反応して、getopts(c:hv)に使用するオプションの一覧を表示してください。
上記の例ではcの後に:の意味は、パラメータを受け取るという意味である。
入力されたパラメータは、$ Getopt :: Std :: opt_cとして使用することができます。

#!/ usr / bin / perl
#vim:set sw = 4 ts = 4 si et nu:

use strict;
Std ; use Getopt :: Std;

################################################## ######
#Global settings
################################################## ######
Std :: STANDARD_HELP_VERSION = 1 ; $ Getopt :: Std :: STANDARD_HELP_VERSION = 1;

VERSION_MESSAGE ( ) { sub main :: VERSION_MESSAGE(){
; print "$ 0 Version 0.5 hyeonkwen@gmail.com";
}

HELP_MESSAGE ( ) { sub main :: HELP_MESSAGE(){
print << END;
Description of this program。
Usage:$ 0 OPTION DIRECTORY

OPTION
-c description of c option
-h view help message
-v view version information
END
}

################################################## ######
#main()
################################################## ######

sub main(){
! getopts ( "c:hv" ) || $Getopt :: Std :: opt_h ) { if(!getopts( "c:hv")| | $ Getopt :: Std :: opt_h){
( ) ; main :: HELP_MESSAGE();
exit;
( $Getopt :: Std :: opt_v ) { } elsif($ Getopt :: Std :: opt_v){
( ) ; main :: VERSION_MESSAGE();
exit;
}
}

main();

PerlのHashはありません。?

6 20、2006 / / alexken作成/ / 技術 / / 3 Comments

Perlでarrayは

= ( 1 , 2 , 3 , 4 , 5 , 6 ) ; my @ array =(1、2、3、4、5、6);

のように定義し、@を前に付けてくれる。
一方、hashは

= ( 'china' => 'beijing' , 'england' => 'london' ) ; my%capitals =( 'china' => 'beijing "、" england "=>' london ');

のように定義して%を付けてくれる。

そして使い方は、

= $capitals { 'china' } ; my $ a = $ capitals {'china'};

$ keyに$ valueの値を読み取る文法だから、てっきりJavaのHash Classのような奴で考えてしまっていた....​​.
(array of($ key - > $ val)):これは、それぞれの$ valをreferしている$ keyのarray

しかし、今日会社でperlでhashを関数の引数で渡すが、誘惑午前に行くことだった。

% ) { sub getHash(%){
= %_ ; my%hash =%_;
my ( $key , $val ) = each ( %hash ) ) { } while(my($ key、$ val)= each(%hash)){}
}

がないのだ。
本引き裂いたのになかった。

なぜだろう??

正解は、すべてのArrayとHashを出力する二つの関数を見ると分かります。

use strict;

@ ) { sub printHash(@){
= @_ ; my%h = @ _;

my ( $key , $val ) = each ( %h ) ) while(my($ key、$ val)= each(%h))
{
, " => " , $val , " \n " ; print $ key、 "=>"、$ val、 "\ n";
}
}

@ ) { sub printArray(@){
= @_ ; my @ a = @ _;

" \n " , @a ) ; print join( "\ n"、@ a);
" ; print "\ n";
}

そうだった。 PerlでHashはArraryそのものだった。

= ( 'china' => 'beijing' , 'england' => 'london' ) ; my%capitals =( 'china' => 'beijing "、" england "=>' london ');

= ( 'china' , 'beijing' , 'england' , 'london' ) ; my @ capitals =( 'china "、" beijing "、" england "、" london ");

つまり、二つのうち勝手にソンオンハンドィ
%capitalsと宣言し、@ captitalsのように使用してもされ、
逆に@ captitalsに宣言し、その後に%capitalsのように書いてもされる。

しかし、後者のように使用した場合、奇数個の引数を持つarrayをhashのように使用した場合どのようなsideeffectがあるのか​​わかりません。

Perlの人の中で私だけ知らなかった内容である。?
すごく当たり前のことや??
とにかく楽しみナンゴかが分かった。

ブログのカテゴリ

天体写真ギャラリー