ホームページ > 運用・保守 > Linuxの運用と保守 > Linuxでファイルを削除する6つの方法(まとめ)

Linuxでファイルを削除する6つの方法(まとめ)

ringa_lee
リリース: 2017-06-23 11:46:33
オリジナル
4606 人が閲覧しました

最初に 500,000 個のファイルを作成します:

test  for i in $(seq 1 500000)
for> do
for> echo test >>$i.txt
for> done
ログイン後にコピー

1.rm

test  time rm -f *
zsh: sure you want to delete all the files in /home/hungerr/test [yn]? y
zsh: argument list too long: rm
rm -f *  3.63s user 0.29s system 98% cpu 3.985 total
ログイン後にコピー

ファイルが多すぎるため、rm が動作しません。

2.find

 test  time find ./ -type f -exec rm {} \;
find ./ -type f -exec rm {} \;  49.86s user 1032.13s system 41% cpu 43:19.17 total
ログイン後にコピー

約43分。

3.削除で探す

 test  time find ./ -type f -delete       
find ./ -type f -delete  0.43s user 11.21s system 2% cpu 9:13.38 total
ログイン後にコピー

には9分かかります。

4.rsync
まず空のフォルダーを作成しますblanktest

 ~  time rsync -a --delete blanktest/ test/
rsync -a --delete blanktest/ test/  0.59s user 7.86s system 51% cpu 16.418 total
ログイン後にコピー

16s、非常に優れており強力です。

5.Python

import os
import time
stime=time.time()
for pathname,dirnames,filenames in os.walk('/home/username/test'):
     for filename in filenames:
         file=os.path.join(pathname,filename)
         os.remove(file)
 ftime=time.time()
 print ftime-stime
ログイン後にコピー
rree

所要時間は約8分です。

6.Perl

 ~  python test.py
494.272291183
ログイン後にコピー


以上がLinuxでファイルを削除する6つの方法(まとめ)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート