• ベストアンサー

powershellでコンソール表示をテキスト保存

powershellでコンソールに表示された結果を 保存するにはどうしたらよいでしょうか? 保存してもコンソール表示はしたいので、 リダイレクトは無しでお願いしたいと思います。

質問者が選んだベストアンサー

  • ベストアンサー
  • queuerev2
  • ベストアンサー率78% (96/122)
回答No.1

リダイレクトは無し というのは、 PS C:\Users\User1\ps> 1,2 >log.txt;get-content log.txt 1 2 ではだめだということでしょうか。 つまり、リアルタイムで表示したうえで記録も残しておきたい、と。 そうであればおそらく最初に候補とすべきはTee-Objectでしょうか。 PS C:\Users\User1\ps> 1,2 | tee-object log.txt 1 2 この例では違いはわかりませんがリアルタイムで表示しているはずです。 なお、ファイルの代わりに変数に保存することもできます(引数 -Variable に文字列で指定) あとはStart-Transcriptでセッションの記録を開始してStop-Transcriptで記録終了する方法もあるようです。 (余談ですが、参考URLの「Tee-Objectにはファイルの追加モードが無い」というのはPowerShell 2.0までの話のようです)

参考URL:
http://mtgpowershell.blogspot.jp/2011/12/tee-object.html
omorinoya35234
質問者

お礼

そうですね。リアルタイム表示だと進歩度やエラー部分がすぐ分かるので。 どちらも試してみましたが、Start-Transcriptが求めていた機能でした。 Start-Transcript設置していない時と同じ表示だったのが良かったです。 有難うございました。

関連するQ&A

  • windows powershellのコンソール上で表示されなくなった

    windows powershellのコンソール上で表示されなくなった上部のデータ(文字)を参照する方法はないでしょうか。 powershellであるscriptを実行しました。その結果としてコンソール上に表示された情報(文字)が予想以上に多く、 上部の方がコンソールの表示範囲を超えてしまった為参照できなくなってしまいました。 ※cmd.exeでも同じ状況になっていると思います。 状況の説明が難しいのですが、 コンソールウィンドウのスクロールバーを一番上までもっていっても今回のscriptの実行結果として表示された情報の初めの行までは表示出来ない状態です。 予めコンソールの出力をテキストファイルなどにリダイレクトするようにして実行すれば良かったのですが。。 powershellに標準出力されたデータはどこかにログなど残っているのでしょうか? windows、powershellに詳しい方、ご教授お願い致します。

  • PowerShellでテキスト内にコマンド表示させるには

    powershellでテキスト内にコマンド結果を表示させるにはどうすればよいでしょうか? 例えば以下のコマンドで、 echo "### date ###" ↓このように表示させたいのですが ### 2010年1月18日 12:00:00 ### Linuxでいうバッククォーテーション(``)なのですが powershellだとどういう方法なのでしょうか?

  • PowerShell が表示されません

    PCはWindows7を使用しております。 スタートから「すべてのプログラム」→「アクセサリ」と進み「Windows PowerShell」 をクリックすると「(空)」と表示が出てきます。これはWindows PowerShellがインストールされていないからでしょうか?。それとも何か別の不具合があるのでしょうか。 Windows PowerShellを少し勉強してみたくなり、表示させて使用できるようにする方法を教えて頂きたくよろしくお願い致します。

  • powershell 7(×64)について

    先日windows11にアップグレードしたところです。機種はNEC、ps150/kar を使用。管理者権限でpowershellをクリックすると”新機能と改善のために最新のpowershellをインストールしてください”と出ます。いろいろ検索して最新のpowershellをインストルーしました。アプリの項目にpowershell 7(×64)があるのでインストールできたと思います。新・旧2つ共存です。 新バージョンをクリックすると ㎰ c:¥user のまえにhttps://aka.m.powershell Type "help"to get helpが表示されます。構わず、sfc /scannowを入力すると”sfcユーティリテを使うには管理者でコンソールセッションを実行していなければなりません”と表示されました。旧バージョンではsfc ,dism.exe は支障なくできますが、それがきちんとスキャンできているかどうか心配です。どなたかご教示いただけると幸いです。よろしくお願いいたします。   ※OKWAVEより補足:「NEC 121ware : Windows」についての質問です

  • コンソール出力をテキストに出力する方法(コンソール出力は残しつつ)

    【質問】  Perl内部で実行される実行ファイル(.exe)のコンソール出力(STDOUT,STDERR)をテキストファイルに出力したい。(Perlのコンソール出力も含む。) ※コンソール出力は残しつつ。 (コマンドプロンプトの)パイプとリダイレクトを使用して上手くいくかと思ったのですが、標準出力と標準エラーとでは標準エラーが先に出力されてしまい、本来出力される順番で出力されない。(標準出力はバッファにたまるため??) 何かいい方法はありませんでしょうか? 【環境】  Windows2000  Active Perl 5.8.8

    • ベストアンサー
    • Perl
  • Windows Powershellが消せません

    Windowsをアップグレードするときに Powershellをアンインストールしてください と表示されました。 なのでインターネットで調べその手順でアンインストールしようと思ったのですが、更新プログラムの表示のところに表示されませんでした。 心当たりがあるとすれば、一回スタートで検索し、Powershellを削除してしまったことです。 自分は今、Vistaを使っています どなたか回答お願いします。

  • PowerShell 7 をインストールしました

    PowerShell 7 をインストールしました まだ何も分かりません。 ザックリの話ですが、 テキストでコマンドスクリプトを書いたとして、 拡張子は何で保存して、 実行する際はどうやって実行すればよろしいでしょうか?

  • Eclipseのコンソールを常に表示させておきたい。

    Eclipseでプログラムを実行すると、結果がコンソールに出る場合は、コンソールが出てそこに結果が出力されると思うのですが、出力された後に、ソースコードの部分をクリックするとコンソールが閉じてしまいます。 常に出しておく方法はあるでしょうか?

    • ベストアンサー
    • Java
  • Powershellで外部テキストファイルより

    まだまだPowershellの初心者で勉強中です。よろしくお願いします。 下記のような記述がしてある『applist.txt』というテキストファイルがあります。 ホスト名  チーム名 abc123  ponpon666 12def456  gekogeko777 ghi78912  fufufu888 Powershellで、まず端末のホスト名を取得し、その値と、上記の『C:\share』というフォルダの中にあるテキストのホスト名と一致した行にある値を表示したいのです。 外部テキストは、他の作業でも使用するため編集はできません。 作ってみたものは、   $result = ipconfig /all $hostname = $result[6].split(":")[1].Trim()  Select-String $hostname -Path C:\share\applist.txt  として、  ホスト名がghi78912という名前のPCのPowershell ISEで実行したところ  C:\share\applist.txt:3:ghi78912 fufufu888 と1行分が出てしまいます。 これをチーム名のfufufu888だけが取得できるようにするには、どのようにすると良いのか、教えていただけませんでしょうか。

  • PowershellのStart-jobが動かない

    PowershellのStart-jobコマンドレッドが動かず困っております。 メモ帳を開くだけの単純なスクリプトです。本文一番下に実際のスクリプトを記載いたします。 Powershell ise上では正常に動くのですが、.ps1形式で保存し、右クリック>Powershellで実行 で実行するとPowershellは起動し、バックグラウンドでの動作もしているようなのですが、肝心のメモ帳が開かれません。 念のためタスクマネージャも確認しましたが、開かれている形跡はありませんでした。 どのようにすれば正常に動作させることができるのでしょうか。 ご教示頂ければ幸いです。 Start-job {Start-Process -FilePath "C:\Windows\System32\notepad.exe"}

専門家に質問してみよう