Форум программистов, компьютерный форум, киберфорум
Shell, Bash
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.62/21: Рейтинг темы: голосов - 21, средняя оценка - 4.62
6 / 5 / 4
Регистрация: 07.11.2014
Сообщений: 58
1

Awk/sed с переменной

28.09.2017, 00:30. Показов 3929. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Привет, подскажите пожалуйста, как использовать awk или sed с переменной.
Есть некая переменная массива arr[0], в конце которой нужно дописать значение переменной arr[3].
Bash
1
arr[0]=$(echo ${arr[0]} | awk '{ print $0"${arr[0]}"}')
Выводит содержимое переменной arr[1] и в конце просто дописывает имя переменной arr[3]. Как сделать, чтобы вместо имени дописывалось содержимое?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
28.09.2017, 00:30
Ответы с готовыми решениями:

sed or awk
есть строка вида document.write('Monitor\n'); как сделать вывод слова Monitor Спасибо.

Awk/sed считать строки от конца
Как вывести строки файла, указывая диапазон от конца? Т.е. аналогично tail, но нужен не конец...

Вырезать строку между 2 позициями с помощью sed и awk
Коллеги, добрый день. Помогите, пожалуйста, не могу разобраться. Не помогает даже гугл, все, что...

Поиск длинного слова используя grep, sed или awk
Написать скрипт с использованием grep, sed, awk (необходимо использовать не менее одной из...

5
4527 / 3521 / 358
Регистрация: 12.03.2013
Сообщений: 6,038
28.09.2017, 02:32 2
Bash
1
arr[0]=$(echo ${arr[0]} | awk '{ print $0'"${arr[0]}"'}')
Должно работать. Внутри одинарных кавычек никакие символы не воспринимаются как особые, и ${arr[0]} тоже понимается буквально.
1
6 / 5 / 4
Регистрация: 07.11.2014
Сообщений: 58
28.09.2017, 07:23  [ТС] 3
helter, Все-таки не работает, синтаксическая ошибка

Добавлено через 4 часа 15 минут
Решил проблему использованием sed.
Bash
1
arr[0]=$(echo ${arr[0]} | sed "s/$/${arr[1]}/g"
Причем, если в строке есть слеш
Bash
1
arr[0]=$(echo ${arr[0]} | sed "s,$,${arr[1]},g"
0
4527 / 3521 / 358
Регистрация: 12.03.2013
Сообщений: 6,038
28.09.2017, 11:32 4
Цитата Сообщение от fR3W Посмотреть сообщение
синтаксическая ошибка
Это другой вопрос — ошибка awk-а, вызванная значением переменной. Главное, он стал получать её значение.
0
Эксперт NIX
 Аватар для Marinero
2795 / 2038 / 682
Регистрация: 02.03.2015
Сообщений: 6,509
28.09.2017, 19:36 5
Цитата Сообщение от fR3W Посмотреть сообщение
переменная массива arr[0], в конце которой нужно дописать значение переменной arr[3].
При чем здесь awk|sed?
Bash
1
arr[0]=${arr[0]}${arr[3]}
или даже
Bash
1
arr[0]+=${arr[3]}
0
7 / 6 / 4
Регистрация: 21.05.2017
Сообщений: 60
15.10.2017, 20:20 6
Цитата Сообщение от Marinero Посмотреть сообщение
При чем здесь awk|sed?
По сути переменные баш может впихнуть куда угодно, т.к. о их существовании знает только он. Получается awk/sed действительно непричём.
0
15.10.2017, 20:20
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
15.10.2017, 20:20
Помогаю со студенческими работами здесь

Использование sed со значением из переменной
Добрый день, Пишу установочный shell-скрипт, который должен провести замену строки в другом...

Запись переменной в файл, используя sed
Всем привет! Мне нужно записать в определённую строку текстового файла, текущую дату. делаю вот...

Ошибка awk
Привет, awk выписывает ошибку: awk: 1: unexpected character '.' Пошарил по интернету и заметил,...

Сценарий на awk
есть текст 1 1 2 3 2/3 2 1 2 3 3/4 3 1 2 3 5/6 4 1 2 3 7/8 независимо от чисел, все...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Rust или Go? А может C++?
hw_wired 28.01.2025
С каждой новой технологией или методологией появляются новые языки программирования, призванные решать конкретные задачи либо улучшать аспекты производительности и безопасности. Среди множества. . .
Fortran и WinAPI: как создать приложение с графическим интерфейсом
hw_wired 28.01.2025
Fortran — это один из старейших высокоуровневых языков программирования, широко используемый в науке и инженерии уже несколько десятилетий. Его название происходит от "Formula Translation" (перевод. . .
Списки в Haskell
hw_wired 28.01.2025
Haskell является функциональным языком программирования, который отличается лаконичностью синтаксиса и мощными абстракциями. Важным концептом в Haskell являются списки — упорядоченные коллекции. . .
Функции высшего порядка в Haskell
hw_wired 28.01.2025
Haskell – это современный функциональный язык программирования, который получил широкое распространение благодаря своей выразительности и мощным абстракциям. Одной из ключевых особенностей Haskell. . .
Как в цикле обойти все поля объекта в JavaScript
bytestream 28.01.2025
Объекты в JavaScript представляют собой фундаментальные структуры данных, которые позволяют хранить и организовывать связанную информацию в виде пар ключ-значение. Каждый объект можно представить как. . .
Как выбрать строки в DataFrame по значению столбца в Pandas
bytestream 28.01.2025
В области анализа данных библиотека Pandas стала незаменимым инструментом для работы с табличными данными в Python. Эта мощная библиотека предоставляет множество функций для эффективной обработки и. . .
Как сделать перенос строки в Bash
bytestream 28.01.2025
При работе с командной оболочкой Bash разработчики часто сталкиваются с необходимостью форматирования текстового вывода, где ключевую роль играет правильное управление переносами строк. Умение. . .
Поиск подстроки в строке с помощью Bash
bytestream 28.01.2025
Поиск подстроки в строке является одной из важных задач в программировании и обработке текстов. Применение такого поиска можно найти в самых разных областях, от анализа данных до разработки. . .
[golang] 169. Majority Element
alhaos 28.01.2025
Тут надо вернуть "мажористый" элемент который встречается в слайсе больше чем в половине случаев. По условиям задачи во входных данных такой элемент обязан присутствовать. / / . . .
Когда лучше использовать LinkedList вместо ArrayList в Java
bytestream 28.01.2025
При разработке Java-приложений выбор правильной структуры данных играет ключевую роль в обеспечении эффективности и производительности программы. ArrayList и LinkedList являются двумя. . .
Какой ответ HTTP лучше использовать: 403 Forbidden или 401 Unauthorized, когда недостаточно прав
bytestream 28.01.2025
В современной веб-разработке правильная обработка ошибок и точное информирование клиентов о статусе их запросов играют критическую роль в создании надежных и безопасных приложений. Особое внимание. . .
Как получить список всех файлов коммита в Git
bytestream 28.01.2025
Система контроля версий Git представляет собой мощный инструмент для управления изменениями в программном коде и других файлах проекта. В основе работы Git лежит концепция коммитов - снимков. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru