〔Bash〕pastebincl快捷提交脚本
Linux下一内置代理功能的优秀广播收听软件Clementine

Linux下递归列出仅所有常规文件或文件夹路径的方法

λ posted @ 2012年9月20日 15:26 in Mixture with tags bash linux tutorial , 13643 阅读

混蛋的,好不容易才知道,立刻发篇博文说一下……囧

## 只列出常规文件
find ./ -type f

## 只列出文件夹
find ./ -type d

find的man page介绍太长了,眼花缭乱(用zsh的可无视= =;)!百度和GOOGLE的结果也太烂了,几乎全是ls方法。

 

既然用到find了,就不得不提它的另一个功能了:

## 对找到的所有文件进行批处理

find . -type f -exec chmod 644 {} \; # 后面的\;必须的,表示按行输出

find . -type d -exec chmod 755 {} \; # {} 表示找到的文件路径

好了,暂时介绍完毕,大家还是继续man find去吧……


本網站無註明「轉載」的著作均由Jak Wings製作 CC BY-NC-SA 2.5
Creative Commons 保持署名-相同方式分享 2.5

Avatar_small
依云 说:
Sep 20, 2012 05:15:12 PM

用 zsh 嘛,输入 find - 然后按 Tab 看看有什么选项,选择 -type 后再按 Tab 看看有那些参数,分别表示什么意思:
>>> find -type
-- file type --
b -- block special file
c -- character special file
d -- directory
f -- normal file
l -- symbolic link
p -- named pipe
s -- socket

Avatar_small
λ 说:
Sep 21, 2012 01:16:35 AM

-_-;; 原来zsh这么强大的啊……解释都有……

Avatar_small
依云 说:
Sep 21, 2012 09:50:36 AM

是啊,很多时候都不用查手册了 :-)

Blade 说:
Jan 09, 2013 11:57:30 AM

如果只是递归列出全部的话
ls -R
就可以了。

find 的强大在于丰富过滤条件,以及找到之后的动作(-exec 参数 以及 管道通向 xargs 等方法)。

λ 说:
Jan 25, 2013 11:58:57 PM

嗯,为了只列出文件或文件夹的路径我在网上搜索了好久……只有find是最方便最完美的。
话说我不玩微博,叫人情何以堪……


登录 *


loading captcha image...
(输入验证码)
or Ctrl+Enter