[7466] コマンドラインからgrep処理について返信 削除
2011/11/17 (木) 10:05:10 あきら
Mozilla/5.0 (Windows NT 5.1) AppleWebKit/535.2 (KHTML, like Gecko) Chrome/15.0.874.106 Safari/535.2
サクラエディタで次ぎの流れで作業することは可能でしょうか?

コマンドラインからgrep処理を起動し、GUIを表示しない
 ↓
grep処理の結果をパイプラインに渡す
 ↓
サクラエディタプロセスを終了する。

つまりGnu Grepのように使いたい。


[7468] Re:コマンドラインからgrep処理について返信 削除
2011/11/18 (金) 06:55:19 syat
Mozilla/5.0 (Windows NT 5.1; rv:9.0) Gecko/20100101 Firefox/9.0
▼ あきらさん
サクラエディタだとGUIは表示されますし、結果をパイプラインに渡すのもできないと思います。
Windowsには findstr というGrep風コマンドがあるのでそちらを調べたほうが良いかと…

人の手をはさんでよいなら以下のようにします。
コマンドラインから-GREPMODEなどのオプションでGrep起動
 ↓
Grep結果を"手動で"テキストファイルに保存
 ↓
サクラエディタを"手動で"終了
 ↓
コマンドラインから type コマンドで保存したテキストを表示



[7749] Re2:コマンドラインからgrep処理について返信 削除
2014/1/6 (月) 14:10:55 すなっくぱん
Opera/9.80 (Windows NT 6.1) Presto/2.12.388 Version/12.16
自分も結局手動で保存しているのですが、最近Ver2.0.5.0から2.1にしたところ、
デフォルトでの保存先がカレントではなくなってしまいました。
コマンドで保存先をカレントに指定してからGREPMODEで起動し即保存とやっていたので少し困っています。

どうやら下記修正の影響のようですので、
(Grep終了後Grep画面のフォルダを検索したフォルダに変更する(svn:2473 upatchid:269 Uchi) )
Grep時のデフォルト保存先をカレントにするコマンドラインオプションを追加したりはできないでしょうか。

findstrでは文字コード混在しているので化け化けになってしまいますし
エディタとして編集してから保存できるのはとても便利です。
尤もコマンドラインで直接ファイルに保存まで持っていければそれに越したことはないのですが…。


[7750] Re3:コマンドラインからgrep処理について返信 削除
2014/1/7 (火) 18:47:19 もか
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:26.0) Gecko/20100101 Firefox/26.0
オプションを追加してみました。
https://sourceforge.net/p/sakura-editor/patchunicode/742/


[7768] Re4:コマンドラインからgrep処理について返信 削除
2014/1/28 (火) 19:05:15 すなっくぱん
Opera/9.80 (Windows NT 6.1) Presto/2.12.388 Version/12.16
オプション追加、2.1.1.0で確認できました。
ありがとうございました。


[8027] Re:コマンドラインからgrep処理について返信 削除
2015/4/22 (水) 15:56:24 すなっくぱん
Opera/9.80 (Windows NT 6.1) Presto/2.12.388 Version/12.17
Ver2.2.0.0にて実装して頂きとても感謝しています。

ただ、batとして組んで直接実行したものは正しく動くのですが、
タスクスケジューラに一日一回実行として時間指定登録したものが上手く動きません。
タスクを右クリック→実行した場合には正しく動作します。

プロセスを監視していると、
タスクスケジューラから呼ばれたcmdから呼ばれたプロセスとして
sakura.exeは起動している為、タスク設定とバッチ自体には問題はなさそうです。
正常なら数秒で終了するはずのsakuraがずっと残りっぱなしになっており、
リダイレクト先のtxtはロックがされているもののGrepヘッダなども何も出力されず真っ白となります。

電源オプションの「次の時間が経過後ハードディスクの電源を切る」が
影響しているのではと思い、この設定を無効にして試しましたが、
一日目は成功したものの二日目は以前同様失敗しました。

現在は「タスクトレイに常駐する」を設定していたことが影響していると想定し、
この設定を解除した状態をテストしようとしています。

イベントログとして、ID1530が出力されていますがタスク実行時間とずれており、関係があるか不明です。
http://blogs.technet.com/b/sharepoint_support/archive/2012/12/17/comexception-0x800703fa.aspx

環境はWin7 SP1 32bit Sakura Ver2.2.0.1です。


[8028] Re2:コマンドラインからgrep処理について返信 削除
2015/4/25 (土) 13:52:30 syat
Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36
▼ すなっくぱんさん

自分のところでタスクスケジューラを5分間隔で実行したところうまく動いたのでタスクスケジューラの問題ではないと思います。
タスクトレイ常駐はオンにしています。

失敗するときにパソコンがロック中とかスタンバイ状態とか発生条件がないでしょうか?



[8029] Re3:コマンドラインからgrep処理について返信 削除
2015/4/27 (月) 11:53:27 すなっくぱん
Opera/9.80 (Windows NT 6.1) Presto/2.12.388 Version/12.17
▼ syatさん
確認ありがとうございます。

動作時状況はログオフ中ですが、スリープ・スタンバイ・休止等はしておりません。電源オプションの時間設定も切ってあります。
タスクとしては管理者アカウントを設定し、ログオンしているかに関わらず実行にしています。
また、Grep実行前に同バッチ内で別ファイルへのECHOリダイレクト書き出し等はできているため、タスクの実行は正常です。
同一設定で成功と失敗の事例がある為、その際の条件の差異は前日起動したSakura-NOWINが起動しているかどうかくらいしか思い当りませんでした。

タスクトレイ常駐設定を解除してからのこの週末3回は正常に動作しました。

バッチ内でのGrep実行コマンド
"サクラエディタパス" -GREPMODE -GKEY="検索文" -GFILE="*" -GFOLDER="検索フォルダ" -GCODE=99 -GOPT=PR2XU >"出力ファイル"

[▼次のスレッド]
INCM/CMT
Cyclamen v3.81