The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Простенький шелл скрипт"
Вариант для распечатки Архивированная нить - только для чтения! 
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [Проследить за развитием треда]

"Простенький шелл скрипт"
Сообщение от Kaufcen Искать по авторуВ закладки on 06-Окт-04, 01:28  (MSK)
Подскажите, как сделать такой скрипт, который бы делал cat для всех двухсимвольных дирректорий в данной директории, а файлы которые в этих директориях записывал в одну дирректорию, но так, чтобы имя файла в каждой дирректории сверялось и совпадало. Вообщем вкратце хочу сделать cat ab/aa aj/aa >ALL/aa ; cat ak/ab aa/ab az/ab >ALL/ab
только на автомате
Спасибо =)
  Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "Простенький шелл скрипт"
Сообщение от Kaufcen Искать по авторуВ закладки on 06-Окт-04, 01:34  (MSK)

А еще точнее и проще наверное, как сделать
cat ??/* > ALL/_здесь_имя_файла_которое_за_звездочкой
т.е. чтобы не в один файл все, а раздельно в каждый файл с одинаковым именем.
  Рекомендовать в FAQ | Cообщить модератору | Наверх

4. "Простенький шелл скрипт"
Сообщение от konst emailИскать по авторуВ закладки(??) on 08-Окт-04, 16:30  (MSK)
>
>А еще точнее и проще наверное, как сделать
>cat ??/* > ALL/_здесь_имя_файла_которое_за_звездочкой
>т.е. чтобы не в один файл все, а раздельно в каждый файл
>с одинаковым именем.

for i in ??;for y in $i;do cat $i/$y >> ALL/$y;done;done

  Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "Простенький шелл скрипт"
Сообщение от jd Искать по авторуВ закладки(??) on 06-Окт-04, 02:40  (MSK)
>Подскажите, как сделать такой скрипт, который бы делал cat для всех двухсимвольных дирректорий в данной директории, а файлы которые в этих директориях записывал в одну дирректорию, но так, чтобы имя файла в каждой дирректории сверялось и совпадало. Вообщем вкратце хочу сделать cat ab/aa aj/aa >ALL/aa ; cat ak/ab aa/ab az/ab >ALL/ab
>только на автомате
>Спасибо =)

На bash'е, например, можно так:

ls ??/*|cut -f2- -d/|sort|uniq|while read; do cat ??/"$REPLY">ALL/"$REPLY"; done

  Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "Простенький шелл скрипт"
Сообщение от MaximKuznetsov Искать по авторуВ закладки on 06-Окт-04, 14:08  (MSK)
>>Подскажите, как сделать такой скрипт, который бы делал cat для всех двухсимвольных дирректорий в данной директории, а файлы которые в этих директориях записывал в одну дирректорию, но так, чтобы имя файла в каждой дирректории сверялось и совпадало. Вообщем вкратце хочу сделать cat ab/aa aj/aa >ALL/aa ; cat ak/ab aa/ab az/ab >ALL/ab
>>только на автомате
>>Спасибо =)
>
>На bash'е, например, можно так:
>
>ls ??/*|cut -f2- -d/|sort|uniq|while read; do cat ??/"$REPLY">ALL/"$REPLY"; done
только пооосторожнее с масками ??/* - при большом кол-ве файлов может получиться некоторый облом ;-)

  Рекомендовать в FAQ | Cообщить модератору | Наверх

5. "Простенький шелл скрипт"
Сообщение от qq Искать по авторуВ закладки(??) on 08-Окт-04, 19:40  (MSK)
>Подскажите, как сделать такой скрипт, который бы делал cat для всех двухсимвольных дирректорий в данной директории, а файлы которые в этих директориях записывал в одну дирректорию, но так, чтобы имя файла в каждой дирректории сверялось и совпадало. Вообщем вкратце хочу сделать cat ab/aa aj/aa >ALL/aa ; cat ak/ab aa/ab az/ab >ALL/ab
>только на автомате
>Спасибо =)

find ./ -type f -path "./??/??" -exec sh -c 'cat {} >> ALL/`basename {}`' \;

или, если файлы не только 2 - буквенные, то

find ./ -type f  -maxdepth 2 -path "./??/*" -exec sh -c 'cat {} >> ALL/`basename {}`' \;

  Рекомендовать в FAQ | Cообщить модератору | Наверх


Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру