我有两个具有相似子文件夹结构的文件夹,我想比较它们。例如:
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) 我需要一些帮助来为 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 如果这不是合适的论坛,那么请相应地指导我。