несколько циклов на основе файлов в каталогах - PullRequest
1 голос
/ 15 июля 2011

Я делаю сценарий оболочки, который мне нужен для создания цикла.У меня есть каталог под названием Файлы.Внутри файлов есть две папки.Каждый содержит 500 файлов (папка1 и папка2).Мне нужно получить имена файлов из folder1 и folder2, потому что мне нужно объединить имя файла в folder1 с folder2.Это нужно сделать для каждого файла в нем.Итак, 250 000 раз.

Кто-нибудь знает, как я написал бы этот цикл, чтобы я мог получить все имена из обоих каталогов и правильно выполнить цикл?

Ответы [ 2 ]

1 голос
/ 15 июля 2011

Если вы в bash, то как-то так

cd Files
for f1 in folder1/*
do
    for f2 in folder2/*
    do
        concat_name="${f1#*/}-${f2#*/}"
    done
done
0 голосов
/ 15 июля 2011

что-то вроде этого должно быть сделано, предполагая, что две подкаталоги называются dir1 и dir2, в этом примере только echoes имена естественно ..

#!/bin/bash

for d1 in `ls Files/dir1`;
do
   for d2 in `ls Files/dir2`;
   do
      echo ${d1}_${d2}
   done
done
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...