Linux のごみ箱メカニズムの実装プロセスと使用方法の詳細な説明

Linux のごみ箱メカニズムの実装プロセスと使用方法の詳細な説明

序文:

Linux システムでの rm は元に戻せません。コマンドの設計自体に問題はありません。問題は、通常、実行時に rm -rf を使用することが多いことです。これは非常に危険です。コマンドが誤って実行されたり、ディレクトリが誤って実行されたりすると、多くの問題が発生します。少なくとも、残業や人的資源と物的資源の浪費につながります。最悪の場合、会社の業務に影響を及ぼし、解雇のリスクにつながることもあります。Windows のごみ箱メカニズムは非常に優れた戦略ですが、Linux にはそれがありません。手動でごみ箱を作成し、直接実行することができます。

mkdir -p ~/.ゴミ箱
猫 >>~/.bashrc<<EOF
#caimengzhi による $(date +%F) の Linux ゴミ箱開始時の追加
エイリアス rm=ゴミ箱
エイリアス rl='ls ~/.Trash' 
エイリアス ur=undelfile
ファイル削除() 
{ 
 mv -i ~/.ゴミ箱/\$@ ./ 
} 
ごみ() 
{ 
 mv \$@ ~/.ゴミ箱/ 
}
ゴミ箱をクリアする() 
{ 
  read -p "ゴミを消去しますか?[n]" 確認 
[ \$confirm == 'y' ] || [ \$confirm == 'Y' ] && /usr/bin/rm -rf ~/.Trash/* 
}
#caimengzhi による $(date +%F) の Linux ゴミ箱終了時の追加
終了
ソース ~/.bashrc

例:

1. ~/.Trashは削除されたファイルやフォルダが移動される場所、つまりごみ箱です。

2. \$confirm は検証を実装することを意味します。つまり、ファイル内の最後の項目は $confirm になります。その中で、\$@は同じです

3. 上記の機能は、簡単に言えば、コマンド rm の名前を変更することです。

使用する構文:

rm (削除)、ur (元に戻す)、rl (ごみ箱の一覧表示)、cleartrash (ごみ箱を空にする) コマンド。

#フォルダを削除すると、ファイルはごみ箱に移動されます。

$rm ディレクトリ

#ファイルを削除する

$rm ファイル.txt

#file.txt の削除を元に戻す

$ur ファイル.txt

#filedirctoryフォルダを削除します

$ur ファイルディレクトリ

# ごみ箱を一覧表示する

$rl

#ごみ箱を空にする

クリアトラッシュ

OK、これが基本的な内容です。本質的には、ルート ユーザーの rm コマンドを mv コマンドに置き換えるだけです。システムに他のユーザーが設定されている場合、そのユーザーを使用して上記のコマンドを再実行する必要があります。状況によって異なります。ルート権限を失った場合、rm -rf の威力は恐れる必要はありません。もちろん、通常の rm コマンドも実行する必要があります。どうすればいいでしょうか? これは問題ありません。

/usr/bin/rm -rf

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Trash-Cli: Linux のコマンドラインごみ箱ツール
  • Linux のごみ箱スクリプトを作成するための 101 個のスクリプト
  • Linux は suid vim.basic ファイルを使用して権限昇格を実現します。
  • Linux での中国語入力方法の問題を素早く解決する
  • MySQL を使用してポート 3306 を開いたり変更したり、Ubuntu/Linux 環境でアクセス許可を開く
  • Linux システムで Vim を使用してリモート ファイルを読み書きするコマンドの詳細な説明
  • Linux サーバーのグラフィック カードのクラッシュの解決策

<<:  mysqlタイムスタンプの使用

>>:  Vue.js のミックスインの詳細な説明

推薦する

Ajax jQueryはページ上のdivの更新効果を実現します

元のコードは次のとおりです。 <div class='コントロールグループ'&...

...

JavaScript 関数型プログラミングの基礎

目次1. はじめに2. 関数型プログラミングとは何ですか? 3. 純粋関数(関数型プログラミングの基...

React refsの詳細な紹介

1. 何ですかRefs 、コンピューターでは Resilient File System (ReF...

JavaScript ウェブページ入門開発詳細説明

パート3: ❤バックエンドデータ受信を見落とす3つの方法❤ (おすすめ集)パート 2: Web フォ...

CSS3は、ズームと回転を実現するためにscale()とrotate()を使用します。

1. scale() メソッドズームとは「縮小」と「拡大」を意味します。 CSS3 では、scal...

MySQL 8.0.15 winx64 のインストールと設定方法のグラフィックチュートリアル (Windows の場合)

この記事では、MySQL 8.0.15 winx64のインストールと設定方法を参考までに紹介します。...

Vue プロジェクトをパッケージ化して Apache サーバーにデプロイする手順

開発環境では、vue プロジェクトは、ローカルで Express サーバーを構築することをベースにし...

MySQLデータ復旧のさまざまな方法の概要

目次1. はじめに2. 直接回復2.1 mysqldumpバックアップの完全リカバリ2.2 xtra...

JS でモバイルのインタラクティブ エクスペリエンスを向上させる方法

目次1. 即時フィードバック1.1 ボタンからの即時フィードバック1.2 継続的なフィードバック1....

MySQL バージョンは、2 つのタイムスタンプ型の値をサポートしていないバージョンよりも低いです。

MySQL エラー:エラー コード: 1293 テーブル定義が正しくありません。CURRENT_T...

CentOS7 システムでスワップを増やす方法の例

序文スワップは、ディスク上にある「仮想メモリ」の一部である特殊なファイル (またはパーティション) ...

はじめに: HTML の基本的なタグと属性の簡単な紹介

HTML はタグと属性で構成されており、これらを組み合わせてブラウザにページの表示方法を指示します。...

MYSQL トランザクション チュートリアル Yii2.0 マーチャント引き出し機能

序文私はプログラマーとしてスタートした PHP プログラマーです。これまで、トレーニング コースで勉...