
今はperlをコマンドプロンプト上でファイルをコンパイルして実行結果を別のテキストファイルに出力しています。(printなど)
ただ、こまごまとした置換え・変換などいちいちテキストファイルにperlを書いてコンパイルして出力ファイルを開いて取り出すというやり方にわずらわしさを感じてきました。
簡単なスクリプトであれば、使い捨ての方がよく感じており、
コマンドプロンプトで試してみたのですが、長い文章やソースなどを変数にいれることができず、(改行がEnterにとられてしまう??)また、一行にずらずらとかかなくてはならないので、うまくいきません。
なにか、テキストエディタのような感じで、このようなperlスクリプトをコンパイルできるようなものはあるのでしょうか。
copalというものを使ってみたのですが、
ファイルハンドルなどが使えなかったのでだめでした。
どなたかご協力お願いします。
No.6ベストアンサー
- 回答日時:
copy con tmp_0001.pl
perl tmp_myperl_0001.pl %*
del tmp_myperl_0001.pl
メモ帳等で上の3行を書いて ~.bat という名前で保存。
このファイルはパスの通っているフォルダに置く。
仮にこのファイルの名前を myperl.bat としておく。
たとえば file1.txt と file2.txtを処理したかったらコマンドラインで
myperl file1.txt file2.txt
などと打つ。
するとperlスクリプトを入力できるようになるので、好きなだけ書いたら、最後に Ctrl+Z を打って入力終了。
即座にスクリプトが実行される。
前の行を修正したりとかはできないけど、簡単なことならこれで事足りるかと。
参考URL:http://support.microsoft.com/kb/68787/ja
No.5
- 回答日時:
質問の意味がよくわからないのですが、ワンラインのことでしょうか?
だとすれば簡単なのは
perl -pe 's/AAA/BBB/g if 5 .. 10 ' hoge.txt >> ho.txt
hoge.txt の 5行目から10行目までの AAA を BBB にして
ho.txt に書き出す
こんな感じの事を言ってるのでしょうか?
参考URL:http://www-06.ibm.com/jp/developerworks/linux/01 …
No.4
- 回答日時:
質問から逸脱してるけど一応書いとくね
>perl aaa.plみたいの
コマンド上で perl という実行形式のファイルに aaa.pl を渡して動作させる の意
例として メモ帳で「index.html」を開く場合
notepad.exe index.html
>コンパイルって具体的にどういうことをさす
理解しないで使っていたみたいね
そういうときはここで調べたら良いよ
http://e-words.jp/
コンパイルするソフトをコンパイラって言って、それの対義語みたいのがインタプリタ
perlはインタプリタ
No.3
- 回答日時:
perl aaa.pl
みたいな実行の仕方はコンパイルじゃないから!
正規表現を用いた置換が使えるテキストエディタの他にもテキストの置換だけを前提にした(フォルダ内を全対象にできるような)ツールはいくつもあるよ
http://www.vector.co.jp/vpack/filearea/win/util/ …
この回答への補足
ご返事ありがとうございます。
すいません。。。
perl aaa.plみたいのはなんていうのでしょうか?
また、コンパイルって具体的にどういうことをさすのでしょうか?
No.2
- 回答日時:
全体に, 「何をしたいのか」が読めない文章になっちゃってます.
そもそも
「今はperlをコマンドプロンプト上でファイルをコンパイルして実行結果を別のテキストファイルに出力しています。(printなど)」
というところから理解不能なんだけど.
あと, 簡単なスクリプトで
「1行にずらずら書かないといけないのでうまくいかない」
というのも, 何がどう「うまくいかない」のかがわからないんだけど.
要するに何をしたいんでしょうか?
この回答への補足
ど素人なものですいません。
今はactive perl をインストールして、windowsのコマンドプロンプトに「perl test.pl」Enter!って感じでやっています。
「perl test.pl」Enter!をコンパイルと呼ぶのだと思っていたのですが違うのですね・・・
1行にずらずら~というのは、test.plのようにファイルにperlスクリプトを書いて実行するのではなく、コマンドプロンプトに直接perlスクリプトを記述して実行させて結果を得たいということです。
コマンドプロンプトだと改行やインデントなどがつけれないので、perlを書いていてだんだんとみずらくなっていくのでそれを不便に感じています。
つまり何が言いたいかといいますと、
コマンドプロンプトのようなソフトで直接perlスクリプトを書き込んで出力結果をその場で得たいのですが、コマンドプロンプトよりいいものはないのでしょうかということです。
すいません。
おわかりいただけますでしょうか。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Perlのライセンス
-
Perl Debugger のエラ-
-
awkの処理速度を改善したい
-
cygwinでcshが認識されず困って...
-
perl でクッキーの状態を調べる
-
ホームページ作成でCGI、VBスク...
-
[ASP]条件によってインクルード...
-
IEでnavigator.javaEnabled()に...
-
CシェルプログラミングをCygwinで?
-
例外処理のフローチャートの記...
-
「デバイスは PRN を初期化でき...
-
vba userFormのSubを標準モジュ...
-
acwzlibとは?
-
VBAで別モジュールへの変数の受...
-
大量の標準モジュールを解放す...
-
エクセルで指定した行範囲を別...
-
アクセス拒否のスクリプト
-
Excel VBAで、ユーザーフォー...
-
モジュールの最大数はいくつな...
-
Excel VBA 定義されたプロージ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ADサーバにおけるログインID,PC...
-
Cからシェルを起動し返り値をハ...
-
Perlのライセンス
-
powershellで関数名を変更する...
-
cygwinでcshが認識されず困って...
-
UWSCのスクリプトにラグが発生...
-
VBScriptでCurrentDirectoryを...
-
perlスクリプトのブラウザURLか...
-
awkの処理速度を改善したい
-
シェルでsyntax errorがでてしまう
-
vbs: オブジェクトがコレクショ...
-
Postfixでメールを受信したらPe...
-
複数のスクリプトを同時に走ら...
-
CGI_Lite.pmは,Perl6.5.1 で使...
-
perlでコマンドライン文字列受...
-
スペースを含むファイルの実行...
-
PHPとJavaScriptを足してビルド...
-
なぜAドライブが起動するのでし...
-
CGI + Mysqlによるバックアップ
-
Windows系OSのPerlスクリプト...
おすすめ情報