The OpenNET Project / Index page

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

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

"Архиваторы. Помогите разобраться." 
Сообщение от visitor Искать по авторуВ закладки(ok) on 09-Апр-05, 10:30  (MSK)
Здравствуйте.
Как заставить unzip, unrar, gunzip, tar zxvf распаковывать архивы в те же директории в которых они находятся? Перечивал несколько рах маны по unzip и unrar, но они могут только распаковывать только в текушую директорию.
А мне нужно чтобы работало например следующее:
/usr/bin/find /dirname -name "*.zip" -exec /usr/bin/unzip {} \;
/usr/bin/find /dirname -name "*.rar" -exec /usr/bin/unrar x {} \;
т.е. сделать рекурсивный поиск архивов начиная с /dirname и найденые
архивы распаковать в директории где эти архивы находятся.

Заране спасибо.

  Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

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

1. "Архиваторы. Помогите разобраться." 
Сообщение от jonatan Искать по авторуВ закладки(??) on 09-Апр-05, 13:52  (MSK)
#!/bin/sh

for i in `find /dirname -name "*.rar" -o -name "*.zip"`
do
        case $i in
        *.rar)
                unrar x $i `dirname $i`
        ;;
        *.zip)
                unzip $i -d `dirname $i`
        esac
done

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "Архиваторы. Помогите разобраться." 
Сообщение от visitor Искать по авторуВ закладки(ok) on 09-Апр-05, 15:09  (MSK)
>#!/bin/sh
>
>for i in `find /dirname -name "*.rar" -o -name "*.zip"`
>do
>        case $i in
>        *.rar)
>            
>    unrar x $i `dirname $i`
>        ;;
>        *.zip)
>            
>    unzip $i -d `dirname $i`
>        esac
>done

спасибо за помощь, но скрипт распаковывает найденные архивы в текущую директорию, а не в ту в которой найденые архивы расположены, т.е. вот эта вещь `dirname $i` не работает... помогите пожалуйста разобраться как образовать путь директории найденого архива, чтоб этот скрипт заработал правильно.

Заранее спасибо.

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "Архиваторы. Помогите разобраться." 
Сообщение от visitor Искать по авторуВ закладки(ok) on 09-Апр-05, 17:15  (MSK)
>>#!/bin/sh
>>
>>for i in `find /dirname -name "*.rar" -o -name "*.zip"`
>>do
>>        case $i in
>>        *.rar)
>>            
>>    unrar x $i `dirname $i`
>>        ;;
>>        *.zip)
>>            
>>    unzip $i -d `dirname $i`
>>        esac
>>done
>
>спасибо за помощь, но скрипт распаковывает найденные архивы в текущую директорию, а
>не в ту в которой найденые архивы расположены, т.е. вот эта
>вещь `dirname $i` не работает... помогите пожалуйста разобраться как образовать путь
>директории найденого архива, чтоб этот скрипт заработал правильно.
>
>Заранее спасибо.

Сорри за тупость :) В нашем случаи dirname в цикле это ведь команда :)

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх


Архив | Удалить

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




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

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