以下の内容はhttp://sonic64.com/2003-05-27.htmlより取得しました。


Landscape トップページ | < 前の日 2003-05-26 2003-05-27 次の日 2003-05-28 >

Landscape - エンジニアのメモ 2003-05-27

perl -e '' の中で シングルクオートを書く


* perl -e '' の中で シングルクオートを書く

この記事の直リンクURL: Permlink | この記事が属するカテゴリ: [Perl]

テストデータを格納したテキストから SQL の INSERT 文を作るため、
一行スクリプトを書いた。しかし、意図した動作をしてくれない。
$ perl -n -l -e 'printf("INSERT INTO uniq_uri (uri) VALUES ('%s');\n", $_);' 5digit.txt
とやってもシングルクオートが出力されない。
シェルが -e の中身を渡すときのデリミタとしてシングルクオートを使っているため、
うまくパースされないのであろう。
というか、うまくパースされて無かったことにされているのだと思う。
2ch.net の Perlについての質問箱 5箱目 に聞いてみたが、結局自分で解答を見つけた。
http://pc2.2ch.net/test/read.cgi/tech/1053053082/149-160

- 解答

アスキーコードでシングルクオートを指定してやればいい。コードの見通しが悪くなるけど。
$ perl -n -l -e 'printf("INSERT INTO uniq_uri (uri) VALUES (\x27%s\x27);\n", $_);' 5digit.txt




以上の内容はhttp://sonic64.com/2003-05-27.htmlより取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14