相关疑难解决方法(0)

如何使用bash对目录中的每个文件执行某些操作?

我从这开始:

command *
Run Code Online (Sandbox Code Playgroud)

但是当目录为空时它不起作用;*通配符成为文字"*"字符.所以我改用这个:

for i in *; do
   ...
done
Run Code Online (Sandbox Code Playgroud)

哪个有效,但同样,如果目录为空则不行.我使用ls:

for i in `ls -A`
Run Code Online (Sandbox Code Playgroud)

但是当然,然后将包含空格的文件名拆分.我尝试了-Q开关:

for i in `ls -AQ`
Run Code Online (Sandbox Code Playgroud)

这导致名称仍然被拆分,只在名称的开头和结尾有一个引号字符.我在这里遗漏了一些明显的东西,还是比它应该更难?

bash shell

18
推荐指数
4
解决办法
4万
查看次数

grep前n个跨文件匹配

我正在使用grep来提取一组文件中的行:

grep somestring *.log
Run Code Online (Sandbox Code Playgroud)

是否可以限制每个文件的最大匹配数?理想情况下,我只需从每个*.log文件中打印出n行.

grep

8
推荐指数
1
解决办法
4955
查看次数

标签 统计

bash ×1

grep ×1

shell ×1