誰かがシェル履歴からコマンドを削除した場合、Linuxで削除されたコマンドを復元する方法はありますか?
答え1
$disk
ディスクまたはパーティションには履歴ファイルが含まれており、その$cmd
履歴に記憶されているコマンドの非常にユニークな部分であり、レコード内のコマンドの総数である100
ため、おそらくそうです。
strings -w "$disk" | grep -C 100 "$cmd"
いくつかの作品が見つかります。条件は、記録ファイルが削除または切り捨てられますが、所定の位置に上書きしたり、トリミング/廃棄したりしないことです。
strings
生デバイスから人が読めるすべての文字列を抽出します。
grep
その項目を検索し、この-C
オプションを使用してコンテキスト行も提供します。
他の人の記録を探していますが、最終的にどのコマンドもわからない場合は... grep forを使用できます^cd \.\.$
。これはほとんどの履歴に表示されるコマンドです(少なくともユーザーがディレクトリを検索している場合)。 。また、スクリプトではほとんど使用されません。