亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
樓主: mark1981
打印 上一主題 下一主題

如何簡便得刪除一個目錄下得大量文件除了某一個文件 [復制鏈接]

論壇徽章:
0
11 [報告]
發(fā)表于 2005-03-03 22:52 |只看該作者

如何簡便得刪除一個目錄下得大量文件除了某一個文件

好,又多學了幾招!

論壇徽章:
0
12 [報告]
發(fā)表于 2005-03-04 08:48 |只看該作者

如何簡便得刪除一個目錄下得大量文件除了某一個文件

如果文件不大,直接cp到別的地方再cp回來。
我發(fā)現(xiàn)當目錄下的文件是10000或者以上的時候,rm會說參數(shù)太多,不會執(zhí)行的。
-bash: /bin/rm: Argument list too long

論壇徽章:
0
13 [報告]
發(fā)表于 2005-03-04 11:30 |只看該作者

如何簡便得刪除一個目錄下得大量文件除了某一個文件

參數(shù)是有數(shù)量限制的,記得十三問中好象有提到。
用*擴展文件名做參數(shù)也有這個問題,超過限制就擴展不了了~
只好用xargs了,所以對于文件少的情況,aerofox兄的方法不能將效率提高得很明顯,對文件多得情況,又無法適用。因此,個人推薦烈火兄的“l(fā)s|xargs”法

論壇徽章:
0
14 [報告]
發(fā)表于 2005-03-04 11:37 |只看該作者

如何簡便得刪除一個目錄下得大量文件除了某一個文件

這個命令:ls !(file) 能執(zhí)行嗎?

論壇徽章:
0
15 [報告]
發(fā)表于 2005-03-04 11:37 |只看該作者

如何簡便得刪除一個目錄下得大量文件除了某一個文件

用xargs不會造成多個進程的,呵呵。exce反而會

論壇徽章:
0
16 [報告]
發(fā)表于 2005-03-04 13:08 |只看該作者

如何簡便得刪除一個目錄下得大量文件除了某一個文件

原帖由 "一夢如是" 發(fā)表:
參數(shù)是有數(shù)量限制的,記得十三問中好象有提到。
用*擴展文件名做參數(shù)也有這個問題,超過限制就擴展不了了~
只好用xargs了,所以對于文件少的情況,aerofox兄的方法不能將效率提高得很明顯,對文件多得情況,又無法..........

當xargs后沒有帶-L參數(shù)時,它實際上是把前面命令的輸出全部組合到一條命令中,所以參數(shù)個數(shù)并沒有減少。
  1. ls * | xargs rm
復制代碼

這條命令的執(zhí)行過程是:首先shell把*擴展為當前目錄下的所有目錄項(隱藏文件除外),然后把它傳給ls,ls把這些參數(shù)顯示到標準輸出,這個輸出再傳給xargs,而xargs把ls的輸出組合到一起,并把它傳給rm,rm執(zhí)行它的刪除任務(wù)。這個過程除了rm命令會接收一大堆參數(shù)外,ls也接收了一大堆參數(shù)。

論壇徽章:
0
17 [報告]
發(fā)表于 2005-03-04 13:09 |只看該作者

如何簡便得刪除一個目錄下得大量文件除了某一個文件

這個命令:ls !(file) 能執(zhí)行嗎?
我用這個怎么說:bash: !: event not found

論壇徽章:
0
18 [報告]
發(fā)表于 2005-03-04 14:05 |只看該作者

如何簡便得刪除一個目錄下得大量文件除了某一個文件

ls *|xargs rm與ls|xargs rm效果基本相同,和rm *不一樣,ls似乎可以接受無限的參數(shù),rm不可以,如archangle兄所言,超過10000文件時,前二命令可以執(zhí)行,第三個則會報錯,這應(yīng)該是命令本身能接受參數(shù)的限制。而xargs傳參的方式也不是簡單的如*般擴展參數(shù)。

論壇徽章:
8
摩羯座
日期:2014-11-26 18:59:452015亞冠之浦和紅鉆
日期:2015-06-23 19:10:532015亞冠之西悉尼流浪者
日期:2015-08-21 08:40:5815-16賽季CBA聯(lián)賽之山東
日期:2016-01-31 18:25:0515-16賽季CBA聯(lián)賽之四川
日期:2016-02-16 16:08:30程序設(shè)計版塊每日發(fā)帖之星
日期:2016-06-29 06:20:002017金雞報曉
日期:2017-01-10 15:19:5615-16賽季CBA聯(lián)賽之佛山
日期:2017-02-27 20:41:19
19 [報告]
發(fā)表于 2005-03-04 14:10 |只看該作者

如何簡便得刪除一個目錄下得大量文件除了某一個文件

原帖由 "rockally" 發(fā)表:
這個命令:ls !(file) 能執(zhí)行嗎?
我用這個怎么說:bash: !: event not found

看人家的環(huán)境ksh

論壇徽章:
0
20 [報告]
發(fā)表于 2005-03-04 14:50 |只看該作者

如何簡便得刪除一個目錄下得大量文件除了某一個文件

[quote]原帖由 "一夢如是"]ls *|xargs rm與ls|xargs rm效果基本相同,和rm *不一樣,ls似乎可以接受無限的參數(shù),rm不可以,如archangle兄所言,超過10000文件時,前二命令可以執(zhí)行,第三個則會報錯,這應(yīng)該是命令本身能接受參數(shù)的限制。而xarg..........[/quote 發(fā)表:

我還是不太理解它們之間的區(qū)別。只要通過exec系統(tǒng)功能調(diào)用,按說就應(yīng)該是一樣的。也不知到參數(shù)數(shù)目的上限是多少,我試了一下,當目錄下有15000個文件時,rm *是能正常工作的。

  1. mkdir /tmp/rm
  2. cd /tmp/rm
  3. for ((i=0; i<15000; i++)); do
  4.     touch $i
  5. done
  6. ls
  7. rm *
復制代碼

以上代碼在Solaris 7上正確執(zhí)行。
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報專區(qū)
中國互聯(lián)網(wǎng)協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP