The UNIX and Linux Forums  


Go Back   В UNIX и Linux Форумы > Топ форумы > Shell программирование и сценарии
.
Google unix.com



Shell программирование и сценарии Почтовые вопросы о KSH, CSH, SH, BASH, Perl, PHP, SED, AWK и скрипты оболочки и оболочки скриптовых языков здесь.

Подробнее UNIX и Linux Темы форума можно найти полезные
Нить Резьба для начинающих Форум Ответы Последнее сообщение
Bash Shell для SH Shell в скрипте saurabh84g Shell программирование и сценарии 8 08-29-2008 06:51 AM
разные оболочки csh Bash ajp7701 Shell программирование и сценарии 1 04-18-2008 05:19 PM
С корпусом, а Bash ajp7701 Shell программирование и сценарии 0 03-18-2008 04:15 PM
Bash Shell BG_JrAdmin Linux 1 08-07-2006 02:56 PM
Баш оболочку ... VijayHegde Shell программирование и сценарии 2 06-06-2006 09:09 AM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered By Powered by Google
 
LinkBack Резьба Инструменты Искать в этом Thread Оценить Thread Режимы дисплея
Old 08-28-2008
RockyC123 RockyC123 is offline
Зарегистрированный пользователь
  
 

Регистрация: Февраль 2008
Сообщений: 6
Баш оболочки трубопровода

Привет всем,

Я новичок в Баш. Я пытаюсь получить югу строка переменной в скрипте. Хотя пытаюсь делать, что я получаю следующую ошибку:

-------------------------------------------------- ----------------------
OHOME: / AAA / BBB / продукт / ЭЭО
. / t.sh: строка 6: / AAA / BBB / продукт / ЭЭО: Нет такого файла или директории
Oracle Base:
-------------------------------------------------- ----------------------

Вот код:

-------------------------------------------------- ----------------------
#! / BIN / ш

OHOME \u003d / AAA / BBB / продукт / ЭЭО
Эхо "OHOME:" $ OHOME

O_BASE \u003d Эхо $ OHOME | AWK-F "/" '(для (i \u003d 2; I <\u003d Н.Ф.; I + +) (если ($ I \u003d\u003d "продукт") (выхода;) A \u003d A "/" $ I ;)) '

Эхо "Oracle Base:" $ O_BASE
-------------------------------------------------- ----------------------

Я очень удивлен. Поскольку он не хотел "Эхо $ OHOME" Я попытался несколько вещей, как вмещающих в скобках, одноместный / двухместный котировки и т.д. Я до сих пор данная ошибка. Похоже, я не могу найти синтаксис из книги или Google

Выглядит очень просто, но я застрял на этом в течение нескольких часов. Может быть, здесь специалисты могут направлять мне.

Вот наша версия для Linux:

<Имя> Linux 2.6.9-67.0.20.ELsmp # 1 SMP Wed Jun 18 12:40:47 EDT 2008 i686 i686 i386 GNU/Linux

Рокки.
Old 08-28-2008
эпоха era is offline Forum Advisor  
Гердер бесполезных Кошки (В субботний)
  
 

Регистрация: Mar 2008
Местоположение: / там / это / только / BIN / ш
Сообщений: 3652
Ваша команда средства OHOME \u003d эхо и при том, что назначение находится в месте, запустите команду $ OHOME что, конечно, не является действительным команды.

Для захвата вывод команды, ставит его в backticks (ASCII 96, а не регулярные прямые цитаты):


Код:
O_BASE=`echo $OHOME | awk -F"/" '{for(i=2;i<=NF;i++) {if($i=="product"){exit;} a=a"/"$i; }} '`

$ OHOME должны быть надлежащим образом в двойные кавычки, узнав, что в настоящее время, и вы получите меньше сюрпризов позже (хотя в данном случае это не реально сделать разницу).

Если ваша оболочка позволяет $(...) вместо backticks `...`, что, возможно, более удобным для чтения, хотя и номинально меньше портативных к наследию Bourne оболочки.

Ваш скрипт AWK-видимому, не делать ничего с неопределенный артикль стороны, если вы имеете в виду захватить его, нужно печатать.

Чтобы сдирать все, после первого появления /Продукт / Вы можете использовать командную подстановку механизм:


Код:
O_BASE=${OHOME%/product/*}

(Ваш скрипт AWK пропускает первый компонент /AAAЗаключается в том, что намеренное? Вы можете удалить с другом, что подстановка переменных, O_BASE \u003d $ (O_BASE # / AAA))

Последний раз редактировалось эры; на 08-28-2008 03:56 PM.. Причина: замена переменной замечания
Old 08-28-2008
RockyC123 RockyC123 is offline
Зарегистрированный пользователь
  
 

Регистрация: Февраль 2008
Сообщений: 6
Ahhh .. Большое спасибо. Я забыл `ы, когда я копировал его со HP. Она работает с `` и $(..)

Ваше второе предложение "O_BASE \u003d $ (OHOME% / продукта / *)" работает без всех дополнительных услуг. Я не могу понять, что одно - нужно получить хорошую книгу, чтобы узнать, что синтаксис.

Что касается третьей части, как эта AWK работ, он берет на себя часть до первого слэша в области: "/ AAA / BBB / продукт / EEE". В этой, AAA является вторым в области AWK и BBB является третьим области.

Проблема решена. Большое спасибо за вашу помощь.
Old 08-28-2008
buffoonix buffoonix is offline
Зарегистрированный пользователь
  
 

Регистрация: Mar 2006
Сообщений: 145
Цитата:
Я забыл `ы, когда я копировал его со HP. Она работает с `` и $(..)
Да, потому, что HP-UX в SH является Posix скорлупы. Видеть Человек-SHPOSIX узнать о его возможностях.
Таким образом, вам следует скорее использовать $(...) стиль, если вы не намерены запустить скрипт
неизмененные на AIX или SunOS / Solaris' ш.
Old 08-28-2008
wempy's Avatar
wempy wempy is offline
Зарегистрированный пользователь
  
 

Регистрация: Июнь 2006
Место проведения: Harpenden, Великобритания
Сообщений: 208
этот Справочные карты Приложение из Дополнительно Баш сценарии руководства (http://tldp.org/LDP/abs/html/) Стала благом для меня "COS Я никогда не может вспомнить правильный синтаксис для струнного нарезки.
Closed Thread

Закладки

Резьба Инструменты Искать в этом Thread
Искать в этом Thread:

Расширенный поиск
Режимы дисплея Оценить эту ветку
Оценить эту ветку:

Отправка Правила
Вы не может Начать новую нитей
Вы не может Почтовые ответы
Вы не может Почтовые вложения
Вы не может Редактировать Ваши сообщения

BB код быть На
Смайлики являемся На
[IMG] код На
HTML-код Вне
Trackbacks являемся На
Pingbacks являемся На
Refbacks являемся На




Часовой пояс GMT -4. Текущее время 09:17 AM.


Powered By: Справка, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Язык Переводы на питание от .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
В UNIX и Linux форумы Содержание Copyright © 1993-2009. Все права Reserved.Ad управления по RedTyger

Содержание соответствующие URL-адреса в vBSEO 3.2.0