小编Mik*_*.C.的帖子

文件夹比较

我有两个具有相似子文件夹结构的文件夹,我想比较它们。例如:

A 
??? child-1
??? child-2
??? child-3
??? child-4
??? child-5
Run Code Online (Sandbox Code Playgroud)

B 
??? child-1-some-text
??? child-2-more-text
??? child-3-nothing
??? child-6-random-text
??? child-7-more-random-text
Run Code Online (Sandbox Code Playgroud)

我想列出所有子文件夹中的子文件夹A前缀,B并列出相应的子文件夹B。预期的输出是

A 
??? child-1
??? child-2
??? child-3
??? child-4
??? child-5
Run Code Online (Sandbox Code Playgroud)

次要要求:如果在 中有多个匹配项B,则应给出错误/警告。

我的解决方案

cd A
for f in `ls -d */`; 
do
    cd B;
    new_dirs=(`ls -1d $f*`);
    cd -;
    if [ ${#new_dirs[@]} -eq 0 ]
    then
        ## DO_Nothing
        continue;
    elif  [ ${#new_dirs[@]} -gt 1 …
Run Code Online (Sandbox Code Playgroud)

bash directory

10
推荐指数
1
解决办法
272
查看次数

带前导空格的 grep 模式

我需要一些帮助来为 grep 设置正确的模式。我需要找到所有出现的pattern可能有 前导空格的地方。例如:在以下文件中:

 1. No pattern recognized.
 2. Pattern to be recognized
 3.          Pattern to be recognized here also
 4.  pattern with only one leading space 
Run Code Online (Sandbox Code Playgroud)

我只想 grep 2,3 和 4 行。行号仅供参考。

到目前为止,我已经尝试了以下方法:

grep -i '^ [[:blank:]]pattern',但它只返回第 4 行。

grep -i '[[:blank:]]pattern' 返回 1,3 和 4。

grep -i '^[[:blank:]]pattern' 返回 1,3 和 4。

-- Mike PS 如果这不是合适的论坛,那么请相应地指导我。

bash regex grep

3
推荐指数
1
解决办法
3万
查看次数

标签 统计

bash ×2

directory ×1

grep ×1

regex ×1