下面的脚本给出了这样的错误:庆典 - 删除目录(包括其内容)的列表
rm: illegal option -- 4
rm: illegal option -- 5
rm: illegal option -- 4
rm: illegal option -- 3
rm: illegal option -- 2
脚本:
#!/bin/bash
keep_no=$1+1
cd "/mydirec/"
rm -rf `ls | sort -nr | tail +$keep_no`
我想脚本来接受参数(NUM的),然后删除所有目录(包括它们包含的文件),除了(在脚本中传递的数字 - 按数字直接命名名称降序排列)。
也就是说,如果/ mydirec /包含这些直销名称:
53
92
8
152
77
和脚本调用,如:bash的del.sh 2
然后/ mydirec /应该包含这些direcs(因为它消除了那些这不是排名前2):
152
92
有人可以请帮忙的语法?
此查找命令将只查找目录* AND **它也会查找当前目录'.' – anubhava 2012-01-17 13:14:43
该问题仅针对目录名称。你的另一点是正确的。我更新了它。现在用sed删除当前目录。 – 2012-01-17 13:17:56
尽管OP似乎通过使用ls命令来删除文件和目录。 – anubhava 2012-01-17 13:24:44