The OpenNET Project / Index page

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

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

"Раскладывание файлов по каталогам, нужен совет."
Сообщение от Sergey emailИскать по авторуВ закладки on 30-Июл-03, 13:26  (MSK)
Что неправильно в этой структуре, или  как можно это проще сделать?
есть архивы типа mac.date.0001.gz
Пытаюсь раскладывать их скриптом по каталогам соответствующим их mac адресам..
#/bin/sh
tmd=`date '+%Y%m%d'`
for f in *.gz
do
#echo $f|tr -s '.' ' '|awk  '/gz/ {print($1)}'
#Дает необходимый мне вывод
#mac1
#mac2
#...
#macn
#а так не работает!
mkdir $f|tr -s '.' ' '|awk  '/gz/ {print($1)}'|cp -Rf ${f} bck/$f|tr -s '.' ' '|awk  '/gz/ {print($1)}'/${f}
#===
done

Спасибо!

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

 Оглавление

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

1. "Раскладывание файлов по каталогам, нужен совет."
Сообщение от konst emailИскать по авторуВ закладки on 30-Июл-03, 18:52  (MSK)
>Что неправильно в этой структуре, или  как можно это проще сделать?
>
>есть архивы типа mac.date.0001.gz
>Пытаюсь раскладывать их скриптом по каталогам соответствующим их mac адресам..
>#/bin/sh
>tmd=`date '+%Y%m%d'`
>for f in *.gz
>do
>#echo $f|tr -s '.' ' '|awk  '/gz/ {print($1)}'
>#Дает необходимый мне вывод
>#mac1
>#mac2
>#...
>#macn
>#а так не работает!
>mkdir $f|tr -s '.' ' '|awk  '/gz/ {print($1)}'|cp -Rf ${f} bck/$f|tr
>-s '.' ' '|awk  '/gz/ {print($1)}'/${f}
>#===
>done
>
>Спасибо!
mkdir `(это обратная кавычка) $f|tr -s '.' ' '|awk  '/gz/ {print($1)}'|cp -Rf ${f} bck/$f|tr -s '.' ' '|awk  '/gz/ {print($1)}'/${f} `(это обратная кавычка)

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

2. "Раскладывание файлов по каталогам, нужен совет."
Сообщение от Sergey emailИскать по авторуВ закладки on 30-Июл-03, 19:18  (MSK)
Собственно в чем проблема, у меня не работает конструкция
${f}|tr -s '.' ' '|awk  '/gz/ {print($1)}' для cp и mkdir
она из файла 123456.300701.0001.gz
должна выташить 1 часть 123456 создать каталог вроде как
mkdir 123456
но в итоге создаеться
123456.300701.0001.gz
хотя
echo ${f}|tr -s '.' ' '|awk  '/gz/ {print($1)}'
выдает
123456

Может так не работает, и есть иной способ?


#/bin/sh
tmd=`date '+%Y%m%d'`
for f in *.gz
do
   mkdir -p  bck/$tmd/${f}|tr -s '.' ' '|awk  '/gz/ {print($1)}'\
   |cp -Rf ${f} bck/$tmd/${f}|tr -s '.' ' '|awk  '/gz/ {print($1)}'
done

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

3. "Раскладывание файлов по каталогам, нужен совет."
Сообщение от konst emailИскать по авторуВ закладки on 30-Июл-03, 19:34  (MSK)
>Собственно в чем проблема, у меня не работает конструкция
>${f}|tr -s '.' ' '|awk  '/gz/ {print($1)}' для cp и mkdir
>
>она из файла 123456.300701.0001.gz
>должна выташить 1 часть 123456 создать каталог вроде как
>mkdir 123456
>но в итоге создаеться
>123456.300701.0001.gz
>хотя
>echo ${f}|tr -s '.' ' '|awk  '/gz/ {print($1)}'
>выдает
>123456
>
>Может так не работает, и есть иной способ?
>
>
>#/bin/sh
>tmd=`date '+%Y%m%d'`
>for f in *.gz
>do
>   mkdir -p  bck/$tmd/${f}|tr -s '.' ' '|awk  
>'/gz/ {print($1)}'\
>   |cp -Rf ${f} bck/$tmd/${f}|tr -s '.' ' '|awk  
>'/gz/ {print($1)}'
>done
Я awk не пользуюсь, но с Perl это может выглядеть так
ls -l
-rw-r--r--  1 root  kvk    0 30 июл 19:32  123.456.a
-rw-r--r--  1 root  kvk    0 30 июл 19:33  124.456.b
-rw-r--r--  1 root  kvk    0 30 июл 19:33  125.456.c

for i in 1*;
do a=`echo $i | perl -ne '/^(\d+)/;print $1;'`;
echo "a=$a";
mkdir $a;
done

rezult - OK

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


Удалить

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




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

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