もしかしたら、あなたは次のような状況を乗り越えてきたのかもしれません。作業中にスクリプトを次々と実行し始めたところ、目的の変数の値を変更したことに突然気付きました。ワークスペースのバックアップを作成する以外に、変数を保護する方法はありませんか?
保護するワークスペース内の個々の変数を選択する方法はありますか?
コマンド履歴レジスタを見る以外に、特定の変数に与えられたさまざまな値の履歴レジスタはありますか?
スクリプトを順番に実行することは、災害のレシピです。可能であれば、それらのスクリプトを関数に変換してみてください。関数内の変数はそれらの関数に対してローカルであるのに対し、スクリプト内の変数はワークスペースに対してローカルであるため、これにより、実行している変数を上書きする問題が自然に解消されます。したがって、別のスクリプトによって簡単にアクセス/上書きされます(特に意図しないことが多い)。 "result" のような変数名を使用する場合)。
また、この状況では書き込み関数が役立つことに同意します。ただし、非常に大きなデータセットを操作している場合は、関数内で変数の複数のコピーを作成しない形式でコードを記述するように注意する必要があります。そうしないと、メモリ不足の問題が発生する可能性があります。
いいえ、ワークスペースの履歴はありません。あなたが説明した問題に遭遇した場合は、プログラミングスタイルを変更することを検討する必要があります.
私はあなたをお勧めします:
それだけの量のコードや情報をスクリプトに入れれば、空のワークスペースから始めてタスクを実行できます。そのため、私は常にclear all
メインファイルの先頭に置きます。
複雑すぎる場合は、関数の呼び出しを検討してください。別のスクリプトまたは関数によって生成される値が必要な場合は、そのスクリプトを書き直して関数にし、それをメイン ファイルで呼び出すか、変数を保存します。変数のロードはまったく問題ありません。しかし、 marciovm が述べたように、スクリプトを順番に実行すると災害につながります。