使用rm命令,可以刪除文件和目錄,也可以刪除多個文件 。
rm命令的一般形式為:rm [選項]... 目錄... 刪除指定的<文件>(即解除鏈接)。
-d --directory 刪除可能仍有數據的目錄 (只限超級用戶)
-f --force 略過不存在的文件,不顯示任何信息,強制刪除
-i --interactive 進行任何刪除操作前必須先確認
-r/R --recursive 同時刪除該目錄下的所有目錄層
-v --verbose 詳細顯示進行的步驟
--help 顯示此幫助信息並離開
--version 顯示版本信息並離開
Ⅱ 如何在Linux中刪除超大的(100
通常,要在 Linux 終端刪除一個文件[1],我們使用 rm 命令(刪除文件)、shred 命令(安全刪除文件)、wipe 命令(安全擦除文件)或者 secure-deletion 工具包(一個安全文件刪除工具集合)。
我們可以使用上述任意的工具來處理相對較小的文件。如果我們想要刪除超大的文件/文件夾,比如大概 100-200GB,在刪除文件(I/O 調度)所花費的時間以及 RAM 佔用量方面,就沒有你想的那麼簡單。
在本教程中,我們會解釋如何在 Linux 中有效率並可靠地刪除大文件/文件夾。
建議閱讀: 5 個在 Linux 中清空或者刪除大文件的方法[2]
我們的主要目標是使用一種不會在刪除大文件時拖慢系統的技術,合理地佔用 I/O。我們可以用 ionice 命令實現這個目標。
在Linux 中使用 ionice 命令刪除超大(200GB)文件
ionice 是一個可以對另一個程序設置或獲取 I/O 調度級別和優先順序的有用程序。如果沒有給出參數或者只有 -p 參數,那麼 ionice 將會查詢該進程的當前的 I/O 調度級別以及優先順序。
如果我們給出命令名稱,如 rm 命令,它將使用給定的參數運行此命令。要獲取或設置調度參數,請指定[進程的 PID],如下:
# ionice -p PID
要指定名字或者調度的數字,使用(0 表示無、1 表示實時、2 表示盡力、3 表示空閑)下面的命令。
以下命令表示 rm 會屬於空閑 I/O 級別,並且只在其他進程不使用的時候使用 I/O:
---- Deleting Huge Files in Linux -----# ionice -c 3 rm /var/logs/syslog# ionice -c 3 rm -rf /var/log/apache
如果系統中沒有很多空閑時間,那麼我們希望使用盡力調度級別,並且使用低優先順序:
# ionice -c 2 -n 6 rm /var/logs/syslog# ionice -c 2 -n 6 rm -rf /var/log/apache
注意:要使用安全的方法刪除大文件,我們可以使用先前提到的 shred、wipe 以及 secure-deletion 工具包中的不同工具,而不是 rm 命令。
Ⅲ 如何在 Linux 中刪除超大的文件
1. 通過重定向到 Null 來清空文件內容
Ⅳ linux 批量刪除文件
首先建立50萬個文件
復制代碼代碼如下:
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 find with delete
復制代碼代碼如下:
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
復制代碼代碼如下:
~ python test.py
494.272291183
大概用時8分鍾。
6 Perl
復制代碼代碼如下:
test time perl -e 'for(<*>){((stat)[9]<(unlink))}'
perl -e 'for(<*>){((stat)[9]<(unlink))}' 1.28s user 7.23s system 50% cpu 16.784 total
Ⅳ linux 刪除多個文件
只需在命令行輸入:「rm文件1名稱文件2名稱文件n名稱」即可在linux中同時刪除多個文件。具體操作步驟如下:
1、首先打開linux操作系統進入到桌面。
Ⅵ Linux下查找和刪除指定大小的文件
LINUX刪除大於/小於固定大小的文件等
刪除目錄下大小為0的文件 find./ -name"*"-type f -size 0c |xargs-n1rm-f
刪除當前目錄下面所有 test 文件夾下面的文件 find./ -name"test"-type d -execrm-rf {} ;
刪除文件夾下面的所有的.py文件 find./ -name'.py'-execrm-rf {} ;
顯示當前路徑下,大於50M的文件 find./ -size +50M
刪除當前路徑下,大於50M的文件 find./ -size +50M -execrm{} \;
參考: https://www.cnblogs.com/yuanmingzhou/p/11082966.html
Ⅶ linux 如何快速刪除大量文件
用rsync刪除目標目錄
mkdir /tmp/blank #建空文件夾
rsync --delete-before -d /tmp/blank/ /your_directory/
Ⅷ linux伺服器上如何批量刪除文件
Step1.在雲伺服器配置FTP服務1.在root許可權下,通過如下命令安裝Vsftp。[root@VM_250_202_tlinux~]#yuminstallvsftpd2.在啟動vsftpd服務之前,需要登錄雲伺服器修改配置文件,將匿名登錄禁用掉。打開配置文件,命令如下:[root@VM_250_202_tlinux~]#vim/etc/vsftpd/vsftpd.conf在配置文件中第11行的「anonymous_enable=YES」前面加上#號,即將匿名登錄禁用。3.讀取生效配置。[root@VM_250_202_tlinux~]#cat/etc/vsftpd/vsftpd.conf|grep^[^#]local_enable=YESwrite_enable=YESlocal_umask=022anon_upload_enable=YESanon_mkdir_write_enable=YESanon_umask=022dirmessage_enable=YESxferlog_enable=YESconnect_from_port_20=YESxferlog_std_format=YESlisten=YESpam_service_name=vsftpserlist_enable=YEStcp_wrappers=YES4.啟動vsftpd服務。[root@VM_250_202_tlinux~]#servicevsftpdstart5.設置FTP用戶賬號。設置成功後,即可通過該賬號登錄FTP伺服器。(1)設置FTP用戶的賬號,例如賬號為「ftpuser1」,目錄為/home/ftpuser1,且設置不允許通過ssh登錄。[root@VM_250_202_tlinux~]#useradd-m-d/home/ftpuser1-s/sbin/nologinftpuser1(2)設置賬號對應的密碼,例如密碼為「ftpuser1」。[root@VM_250_202_tlinux~]#passwdftpuser16.修改vsftpd的pam配置,使開發者可以通過自己設置的FTP用戶帳號和密碼連接到雲伺服器。(1)修改pam。[root@VM_250_202_tlinux~]#vim/etc/pam.d/vsftpd內容修改為:#%PAM-1.0authrequired/lib64/security/pam_listfile.soitem=usersense=denyfile=/etc/ftpusersonerr=succeedauthrequired/lib64/security/pam_unix.soshadownullokauthrequired/lib64/security/pam_shells.soaccountrequired/lib64/security/pam_unix.sosessionrequired/lib64/security/pam_unix.so(2)確認修改後的文件是否正確。[root@VM_250_202_tlinux~]#cat/etc/pam.d/vsftpd#%PAM-1.0authrequired/lib64/security/pam_listfile.soitem=usersense=denyfile=/etc/ftpusersonerr=succeedauthrequired/lib64/security/pam_unix.soshadownullokauthrequired/lib64/security/pam_shells.soaccountrequired/lib64/security/pam_unix.sosessionrequired/lib64/security/pam_unix.so(3)重啟vsftpd服務,使修改生效。[root@VM_250_202_tlinux~]#:[OK]Startingvsftpdforvsftpd:[OK]Step2.上傳文件到Linux雲伺服器1.下載並安裝開源軟體FileZilla請使用FileZilla的3.5.1、3.5.2版本(使用3.5.3版本的FileZilla進行FTP上傳會有問題)。由於FileZilla官網上只提供了最新的3.5.3版本下載,因此建議開發者自行搜索3.5.1、3.5.2下載地址。建議的3.5.1下載地址:/filezilla.php?old_filezilla=63502.連接FTP運行FileZilla,按下圖所示進行配置,配置後點擊「快速鏈接」:配置信息說明如下:(1)主機:雲伺服器的公網IP(在雲伺服器「管理視圖」頁面可查看雲伺服器的公網IP)。(2)用戶名:在Step1中設置的FTP用戶的賬號,這里以「ftpuser1」為例。(3)密碼:在Step1中設置的FTP用戶賬號對應的密碼,這里以「ftpuser1」為例。(4)埠:FTP監聽埠,默認為「21」。3.上傳文件到Linux雲伺服器上傳文件時,滑鼠選中本地文件,拖拽到遠程站點,即將文件上傳到了Linux雲伺服器。注意:雲伺服器FTP通道不支持上傳tar壓縮包後自動解壓,以及刪除tar包功能。