bash – 查找文件的名称小于或大于给定参数
发布时间:2020-12-15 18:32:18 所属栏目:安全 来源:网络整理
导读:说在我得到的给定目录中 tzury@x200:~/Desktop/sandbox$ls -ltotal 20drwxr-xr-x 2 tzury tzury 4096 2011-03-09 10:19 N00.P000drwxr-xr-x 2 tzury tzury 4096 2011-03-09 10:19 N00.P001drwxr-xr-x 2 tzury tzury 4096 2011-03-09 10:19 N00.P002drwxr-xr-
说在我得到的给定目录中
tzury@x200:~/Desktop/sandbox$ls -l total 20 drwxr-xr-x 2 tzury tzury 4096 2011-03-09 10:19 N00.P000 drwxr-xr-x 2 tzury tzury 4096 2011-03-09 10:19 N00.P001 drwxr-xr-x 2 tzury tzury 4096 2011-03-09 10:19 N00.P002 drwxr-xr-x 2 tzury tzury 4096 2011-03-09 10:19 N00.P003 drwxr-xr-x 2 tzury tzury 4096 2011-03-09 10:19 N00.P004 drwxr-xr-x 2 tzury tzury 4096 2011-03-09 10:19 N01.P000 drwxr-xr-x 2 tzury tzury 4096 2011-03-09 10:19 N01.P001 drwxr-xr-x 2 tzury tzury 4096 2011-03-09 10:19 N01.P002 我寻求一种bash方式来获取其名称比给定参数更大或更小的文件列表,例如: $my_finder lt N00.P003 应返回N00.??P000,N00.P001和N00.P002 $my_finder gt N00.P003 应返回N00.??P004,N01.P000,N01.P001和N01.P002 我想在$(ls)和$name!= $2中迭代名称,但相信有更优雅的方式这样做
永远不要迭代ls输出!
这是我的建议: for fn in *; do test "$fn" -$1 "$2" && echo "$fn"; done 编辑: 抱歉.仅当$fn和$2为数字时,上述方法才有效.你必须用$op替换$1,并在循环前添加一个选择器. OP = “<”或op =“>”取决于$1,分别是lt或gt. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |