2

MATLAB で元の「clc.m」ファイルをチェックしていました。どうやら関数は p-code として書かれており、次の場所に記述されているだけです。

..\MATLAB\R2013a\toolbox\matlab\iofun\clc.m

元のコードを見るにはどうすればよいですか?; ただし、これは主な質問ではなく、単なる楽しみです。

要点は、画面をきれいにした後、 clcプロセスを元に戻す方法を探しているということです。clcプロセスを元に戻す方法はありますか。同じ質問がclear allにも当てはまります。

4

2 に答える 2

2

homeの代わりに使ってみてくださいclc。コマンドclcウィンドウからすべてのテキストを削除し、カーソルを左上に移動して空白のウィンドウを表示しますhomeが、カーソルを左上に移動して空白のウィンドウを表示しますが、テキストはまだそこにあり、上にスクロールできますそれを見るために。homeではなくずっと使っていclcます。

いずれの場合も、テキストはコマンド履歴ウィンドウに残り、上/下矢印を使用してコマンド ウィンドウで取得できます。

コード ビハインドclcが表示されない理由は、それが p コード化されているからではなく、組み込み関数である (つまり、MATLAB 言語で実装されていない) からです。同じことが にも当てはまり、clearなどの多くの数学関数にも当てはまります。それらを変更して動作を変更する方法はありません (プロセスを逆にするなど)。svdeig


diary編集:コマンドウィンドウでのすべての入力と出力のログを指定されたファイルに保存する関数を調べることもできます。ファイルに次の行がありstartup.mます ( doc startupMATLAB スタートアップ ファイルの使用方法がわからない場合は入力してください)。

diaryFolder = 'C:\diaries';
diaryFileName = ['diary', datestr(now, 'yyyymmdd'), '.txt'];
diary(fullfile(diaryFolder, diaryFileName))

そのため、MATLAB を起動するたびに、すべてのコマンド ウィンドウの入力と出力が、日付で名前が付けられたダイアリー ファイルに自動的にキャプチャされます。MATLAB を 1 日に複数回起動すると、同じファイルに追加されます。必要に応じて検索できるすべての記録が常に保持されていますclchome

于 2013-08-20T08:54:49.257 に答える
0

とにかく clc プロセスを元に戻す方法があるとは思いません。とはいえ、コマンド履歴を引き続き表示することは可能であるため、どこかに到達する可能性があります.

データを消去すると、データは永久に失われると思います。データがメモリのどこかに保存されているとは思えません。一定数の行の後、履歴が削除されることを知っています。したがって、最善の策は、そのバッファーがどれくらい大きいかを把握し、そこから何か興味深いものを見つけることができるかどうかを確認することです。

于 2013-08-19T22:28:55.383 に答える