Книга: Искусство программирования на языке сценариев командной оболочки

Пример 34-3. Простая база данных, с применением косвенных ссылок

Пример 34-3. Простая база данных, с применением косвенных ссылок

#!/bin/bash

# resistor-inventory.sh

# Простая база данных, с применением косвенных ссылок.

# ============================================================== #

# Данные

B1723_value=470 # сопротивление (Ом)

B1723_powerdissip=.25 # рассеиваемая мощность (Вт)

B1723_colorcode="желтый-фиолетовый-коричневый" # цветовая маркировка

B1723_loc=173 # где

B1723_inventory=78 # количество (шт)

B1724_value=1000

B1724_powerdissip=.25

B1724_colorcode="коричневый-черный-красный"

B1724_loc=24N

B1724_inventory=243

B1725_value=10000

B1725_powerdissip=.25

B1725_colorcode="коричневый-черный-оранжевый"

B1725_loc=24N

B1725_inventory=89

# ============================================================== #

echo

PS3='Введите ноиер: '

echo

select catalog_number in "B1723" "B1724" "B1725"

do

Inv=${catalog_number}_inventory

Val=${catalog_number}_value

Pdissip=${catalog_number}_powerdissip

Loc=${catalog_number}_loc

Ccode=${catalog_number}_colorcode

echo

echo "Номер по каталогу $catalog_number:"

echo "Имеется в наличии ${!Inv} шт. [${!Val} Ом / ${!Pdissip} Вт]."

echo "Находятся в лотке # ${!Loc}."

echo "Цветовая маркировка: "${!Ccode}"."

break

done

echo; echo

# Упражнение:

# ----------

# Переделайте этот сценарий так, чтобы он использовал массивы вместо косвенных ссылок.

# Какой из вариантов более простой и интуитивный?

# Примечание:

# ----------

# Язык командной оболочки не очень удобен для написания приложений,

#+ работающих с базами данных.

# Для этой цели лучше использовать языки программирования, имеющие

#+ развитые средства для работы со структурами данных,

#+ такие как C++ или Java (может быть Perl).

exit 0

Оглавление книги


Генерация: 1.285. Запросов К БД/Cache: 3 / 0
поделиться
Вверх Вниз