Bash (Обход подпрограммы)

На самом деле это единственный раздел про unix на этом форуме

Модераторы: /dev/random, Модераторы разделов

Аватара пользователя
Viper-2
Сообщения: 79
ОС: Debian 4.0, Linux 2.6.18-4-686

Bash

Сообщение Viper-2 »

Простой пример

Код: Выделить всё

!#/bin/sh

EXEC_A()
{ echo "ляляля... жужужу... действительно распаковать этот архив?"; read b
if [ $b = "yes" ]; then EXEC_B; else exit 0; fi
}

EXEC_B()
{ tar -xf $arch
}

case $1 in
-a)
arch=$2; EXEC_A
;;
...
;;
esac


как сделать шоб скрипт обходил подпрограмму EXEC_A вслучае запуска его с определённым параметром (допустим --noask)? вроде не сложно, если этот параметр стоит в определенном месте (test -a tar.tar --noask), а если записать так: test -a --noask tar.tar, то получится "tar: --noask: не возможно открыть" :) если возможно тыкните носом в ссылку где подробно описываются такие фокусы, ПЛИЗ или опишите действия
RedHat 4.0, Debian 3.1, Open SuSE 10.1, Open SuSE 10.2, ASP Linux 11.2, Ubuntu 7.04, Debian 4.0, Open SuSE 10.3, Gentoo 2007, Ubuntu 7.10, Ubuntu 8.04!
Спасибо сказали:
allez
Сообщения: 2223
Статус: Не очень злой админ :-)
ОС: SuSE, CentOS, FreeBSD, Windows

Re: Bash

Сообщение allez »

Думаю, man getopt или man sh на предмет getopts вам помогут.
Спасибо сказали:
Аватара пользователя
Славик
Сообщения: 159
ОС: AltLinux2.4 master

Re: Bash

Сообщение Славик »

man bash, например. Там есть краткое описание конструкции if
И естественно, классика жанра
Читать всё, в данном случае особенно внимательно про позиционные параметры.
Познание бесконечности требует бесконечного времени.
А. и Б. Стругацкие
Понедельник начинается в субботу
Спасибо сказали:
Аватара пользователя
Viper-2
Сообщения: 79
ОС: Debian 4.0, Linux 2.6.18-4-686

Re: Bash

Сообщение Viper-2 »

иан читал давненько... в манах все очень кратко написано =) для баш ман помойму как креветка в море... спасибо за ссылку
RedHat 4.0, Debian 3.1, Open SuSE 10.1, Open SuSE 10.2, ASP Linux 11.2, Ubuntu 7.04, Debian 4.0, Open SuSE 10.3, Gentoo 2007, Ubuntu 7.10, Ubuntu 8.04!
Спасибо сказали:
Аватара пользователя
Славик
Сообщения: 159
ОС: AltLinux2.4 master

Re: Bash

Сообщение Славик »

Viper-2 писал(а):
24.09.2007 14:51
иан читал давненько... в манах все очень кратко написано =) для баш ман помойму как креветка в море... спасибо за ссылку


Вот именно краткость этого мана и есть его основное достоинство. Толково, и ничего лишнего. Но сам по себе он довольно большой. Я евоный русский вариант распечатал - тридцать страниц восьмым кеглем в две колонки, однако. По большому счёту, туда если вдумчиво вчитаться, для программирования больше ничего знать и не нужно. А учебник этот хорош тем, что много листингов практически на все случаи жизни. А если есть желание - всё это можно несходя с места пощупать руками, терминал перед мордой лица ;) Правда врубиться в этот язык снаскоку даже не надейся.
Удачи.
Познание бесконечности требует бесконечного времени.
А. и Б. Стругацкие
Понедельник начинается в субботу
Спасибо сказали: