roboforum.ru

Технический форум по робототехнике.

linux mount script

Вопросы не попавшие в другие категории.

linux mount script

Сообщение Vooon » 12 ноя 2007, 00:05

линуксоиды подскажите как написать bash-скрипт.

задча:
есть папка содержащая iso-образы CD-дисков,
ножно рекурсивно их всеж подмоунтедь к соотв. папкам.

например:
есть образ: ./protheus7.iso
нужно замаунтить в ./mounted/protheus7/
содержимое образа.

как это сделать?

ПС: с bash я знаком поверхностно, очень желательны камменты.
Linux user | Firefox user
Аватара пользователя
Vooon
Site Admin
 
Сообщения: 3339
Зарегистрирован: 09 фев 2006, 15:36
Откуда: Москва
Skype: vooon341
прог. языки: Python, C, Bash, JavaScript, C++, PHP
ФИО: Владимир Ермаков

Re: linux mount script

Сообщение Strijar » 12 ноя 2007, 19:48

а рекурсивно то зачем?
Образов много? Может проще один раз прописать в fstab?
Аватара пользователя
Strijar
 
Сообщения: 664
Зарегистрирован: 28 авг 2006, 17:09
Откуда: Всеволожск (СПб)
прог. языки: С, C++, Python, Lua, VHDL, Verilog, Forth
ФИО: Олег Белоусов

Re: linux mount script

Сообщение Vooon » 13 ноя 2007, 01:55

нет, в фстаб писать бессмысленно, образов довольно много и могут появляться новые

идея в том, что в один каталог скидывают образы а в другом после запуска скрипта появляются каталоги с именами исошников и в них соотв образы замаунчены

вобщем алгоритм примерно такой:

1. получить список всех *.iso файлов из $src
2. перебирать список файлов:
2.1. создать каталог <имя образа> в каталоге $dst
2.2. umount "${src}/<имя образа>"
2.3. mount -O utf-8 "${src}/<имя образа>" "${dst}/<имя образа>"
Linux user | Firefox user
Аватара пользователя
Vooon
Site Admin
 
Сообщения: 3339
Зарегистрирован: 09 фев 2006, 15:36
Откуда: Москва
Skype: vooon341
прог. языки: Python, C, Bash, JavaScript, C++, PHP
ФИО: Владимир Ермаков

Re: linux mount script

Сообщение Strijar » 13 ноя 2007, 11:19

Ну вот ты все и написал ;) Вот те для "рыбы"

Код: Выделить всёРазвернуть
#!/bin/bash

for file in `find -type f -name "*.iso"` ; do
    name = `basename $file`
done


А дальше man bash и сам! ;)
Аватара пользователя
Strijar
 
Сообщения: 664
Зарегистрирован: 28 авг 2006, 17:09
Откуда: Всеволожск (СПб)
прог. языки: С, C++, Python, Lua, VHDL, Verilog, Forth
ФИО: Олег Белоусов

Re: linux mount script

Сообщение Vooon » 13 ноя 2007, 14:33

хе, я просто не достаточно знаю "книгу бэшей" :)
спасибд за рыбу, дальше все просто
Linux user | Firefox user
Аватара пользователя
Vooon
Site Admin
 
Сообщения: 3339
Зарегистрирован: 09 фев 2006, 15:36
Откуда: Москва
Skype: vooon341
прог. языки: Python, C, Bash, JavaScript, C++, PHP
ФИО: Владимир Ермаков

Re: linux mount script

Сообщение Vooon » 13 ноя 2007, 19:14

вот так написал:
Код: Выделить всёРазвернуть
#!/bin/bash

src=`realpath $1`
dst=`realpath $2`

cd $src
for file in `find -type f -name "*.iso"` ; do
   name=`basename ${file}`
   echo "${src}/${name} -> ${dst}/${name}/"
   umount "${src}/${name}"
   rm -rf "${dst}/${name}"
   mkdir "${dst}/${name}"
   mount -o loop "${src}/${name}" "${dst}/${name}"
   echo "iter '${name}' done"
done
echo 'done'
Linux user | Firefox user
Аватара пользователя
Vooon
Site Admin
 
Сообщения: 3339
Зарегистрирован: 09 фев 2006, 15:36
Откуда: Москва
Skype: vooon341
прог. языки: Python, C, Bash, JavaScript, C++, PHP
ФИО: Владимир Ермаков


Вернуться в Обо всём

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 14