mas*_*ama 2 command-line bash grep
我在结合 ls 和 grep 时遇到了一些麻烦。问题是我必须只使用 ls 和 grep 来列出主目录中的所有文件。我尝试了多种组合,但没有效果。我想我应该像这样使用它:
ls /home/mydir | grep stomething
Run Code Online (Sandbox Code Playgroud)
下一个问题是(不知道怎么做)如何使用 ls 和另一个命令来计算主文件夹中的目录数?
您对 ls 和 grep 的使用是正确的,它将在包含 'stomething' 的 ls 输出中找到任何结果。请注意,查看整行,而不仅仅是文件名(主要适用于将某些标志与 ls 一起使用,例如 ls -l 等)。
查找目录,最好使用 find 和 wc (wordcount):
find /home/mydir -maxdepth 1 -mindepth 1 -type d | wc -l
Run Code Online (Sandbox Code Playgroud)
解释:
如果您在没有管道的情况下运行 wc,您将获得所有结果的列表。Find 是一个非常方便的命令,需要熟悉。