The OpenNET Project / Index page

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

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Замена строк в bash-e "
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [ Отслеживать ]

"Замена строк в bash-e "  +/
Сообщение от Сергей (??) on 26-Янв-10, 01:22 
Такой код написан в скрпте script.sh

#!/bin/sh
#!/usr/local/bin/bash
str="a-a-a-"
echo $str
echo ${str//-/}

результат выполнения: ./script.sh: ${str/...}: Bad substitution

В чем загвоздка? Кто-нибудь понимает?
Спасибо за ответ

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

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Замена строк в bash-e "  +/
Сообщение от Сергей (??) on 26-Янв-10, 01:27 
>[оверквотинг удален]
>#!/bin/sh
>#!/usr/local/bin/bash
>str="a-a-a-"
>echo $str
>echo ${str//-/}
>
>результат выполнения: ./script.sh: ${str/...}: Bad substitution
>
>В чем загвоздка? Кто-нибудь понимает?
>Спасибо за ответ

Можно конечно запускать bash ./script.sh и тогда работает... но не понятно почему не работает без явного указания bash

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

2. "Замена строк в bash-e "  +/
Сообщение от jd (??) on 26-Янв-10, 04:35 
>>результат выполнения: ./script.sh: ${str/...}: Bad substitution
>>
>Можно конечно запускать bash ./script.sh и тогда работает... но не понятно почему
>не работает без явного указания bash

Потому что "${str//-/}" - это конструкция bash, но не sh. Bash предоставляет значительно больший функционал, нежели стандартный sh. Так как первой строкой у вас указан /bin/sh, то именно он и пытается выполнять скрипт, а такой конструкции он не знает. Укажите в качестве исполнителя скрипта (первая строка) bash и будет вам счастье.

P.S. А вторая строка у вас вообще непонятно, зачем. Каково её назначение?

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

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

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




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

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