powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / строки в одной переменой среды
10 сообщений из 10, страница 1 из 1
строки в одной переменой среды
    #36957420
тoп_тoп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
можно ли (как) в переменную в shell загнать несколько строк (символы с переводом строки)
по смыслу что-нибудь такое: export varLine='line1'+/n+'line2' ?
...
Рейтинг: 0 / 0
строки в одной переменой среды
    #36957447
A.V.Goncharyk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
export SHELLVARIABLE= "stringline1 \
stringline2 \
stringline3"
...
Рейтинг: 0 / 0
строки в одной переменой среды
    #36957478
тoп_тoп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
И вдогонку:
не пойму, echo "\n\n tralala" должен пропустить несколько строк, у меня же выводит:
\n\n tralala
почему ?
...
Рейтинг: 0 / 0
строки в одной переменой среды
    #36957480
A.V.Goncharyk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
export ShellVariable=$( cat <<EOF
String1
String2
String3
EOF
)
...
Рейтинг: 0 / 0
строки в одной переменой среды
    #36957508
тoп_тoп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
A.V.Goncharykexport ShellVariable=$( cat <<EOF
String1
String2
String3
EOF
)
спасибо.
при просмотре export действительно выдает ее в 3 строки.

но не пойму, почему при этом (второй мой пост про это) получается так:
echo $ShellVariable
String1 String2 String3
(в одну строку)?
...
Рейтинг: 0 / 0
строки в одной переменой среды
    #36957582
A.V.Goncharyk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
перевод строки съедает echo
...
Рейтинг: 0 / 0
строки в одной переменой среды
    #36957587
тoп_тoп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
A.V.Goncharykперевод строки съедает echo
странно, в man вроде написано, что echo "\n" строку должно пропустить, а наблюдаю, что это не так :(
...
Рейтинг: 0 / 0
строки в одной переменой среды
    #36957669
тoп_тoп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
тoп_тoпA.V.Goncharykперевод строки съедает echo
странно, в man вроде написано, что echo "\n" строку должно пропустить, а наблюдаю, что это не так :(
c \n разобрался - похоже у shell встроенный echo, отличающийся от стандартного:
c явным указанием пути: /usr/bin/echo "\n" пропускает строку, как и положено.
а у ShellVariable съедают перевод строки обе версии.

спасибо.
...
Рейтинг: 0 / 0
строки в одной переменой среды
    #36958210
avb1003
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
тoп_тoптoп_тoппропущено...

странно, в man вроде написано, что echo "\n" строку должно пропустить, а наблюдаю, что это не так :(
c \n разобрался - похоже у shell встроенный echo, отличающийся от стандартного:
c явным указанием пути: /usr/bin/echo "\n" пропускает строку, как и положено.
а у ShellVariable съедают перевод строки обе версии.

спасибо. В man написано, что "... If the -e option is given, interpretation of the following backslash-escaped characters is enabled". То есть, для пропуска строки нужно писать
Код: plaintext
>echo -e "\n"
А исходная задача может быть решена так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
>cat t.sh
#!/bin/bash
export SHELLVARIABLE="stringline1 
stringline2 
stringline3"
echo "$SHELLVARIABLE"
>./t.sh
stringline1 
stringline2 
stringline3
>
GNU bash, version 3.2.39(1)-release
...
Рейтинг: 0 / 0
строки в одной переменой среды
    #36958714
тoп_тoп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
avb1003
Код: plaintext
>echo -e "\n"

точно, для оболочечного echo так работает.
спасибо
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / строки в одной переменой среды
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]