Форум программистов, компьютерный форум, киберфорум
PowerShell
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 09.10.2021
Сообщений: 14

Create a circular letter

02.12.2021, 12:36. Показов 1361. Ответов 7

Студворк — интернет-сервис помощи студентам
У нас есть два файла .txt. В первом (circularletter.txt) у нас есть письмо, а во втором (database.txt) у нас есть люди, которые получат это письмо. Мы должны создать письмо, которое отобразится в выводе 3 раза, но там поменяются только имена приглашенных.

Дорогая Анна, хочу пригласить тебя на свой день рождения!
Дорогая Лиза, хочу пригласить тебя на свой день рождения!
Дорогой Джон, хочу пригласить тебя на свой день рождения!

Пожалуйста, помогите мне переписать этот shell script на PowerShell.

Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#!/bin/bash 
 
if [ ! -f $1 ] || [ ! -f $2 ]
then 
    echo "$1 or $2 does not exist in this directory"
    exit
fi
 
if [ -f $1 ] && [ -f $2 ]
then
while read line 
    do 
        name=`echo $line | cut -f1 -d","`
            echo `cat $2 | sed "s/<name>/$name/g"`
            echo " "
done < $1
fi
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
02.12.2021, 12:36
Ответы с готовыми решениями:

Что за операция в коде: char.IsLetter(letter) ? letter - 'A' : 26; ?
Всем здравствуйте! Ребят вот весь код. using System; // ReSharper disable AssignNullToNotNullAttribute // ReSharper disable...

TFilestream.create [cannot create file]
function bat: string; begin with TFileStream.Create(extractfilepath(application.ExeName)+'bin\gcc\bin\compile.bat', fmCreate) do ...

Illegal Circular Use
При открытии базы, закрытии, открытии документа, постоянно выдает ошибку &quot;illegal circular USE: ResourceString&quot;. Скажите, как я могу...

7
 Аватар для alhaos
1929 / 545 / 154
Регистрация: 20.02.2019
Сообщений: 2,664
Записей в блоге: 65
02.12.2021, 13:34
Лучший ответ Сообщение было отмечено mainnabud как решение

Решение

Цитата Сообщение от list
Code
1
2
3
4
Li Shiu-ying
Carmen Cervera
Michèle Wargnier
Inge Jörgensen
Цитата Сообщение от circular.txt
Code
1
Дорогое {0}, хочу пригласить тебя на свой день рождения!
PowerShell
1
2
3
4
5
6
7
using namespace System.IO
 
$circular = [file]::ReadAllText('.\circular.txt')
 
foreach ($line in [file]::ReadAllLines('.\list.txt') ) {
    $circular -f $line
}
Цитата Сообщение от out
Code
1
2
3
4
Дорогое Li Shiu-ying, хочу пригласить тебя на свой день рождения!
Дорогое Carmen Cervera, хочу пригласить тебя на свой день рождения!
Дорогое Michèle Wargnier, хочу пригласить тебя на свой день рождения!
Дорогое Inge Jörgensen, хочу пригласить тебя на свой день рождения!
не знаю как там люди храниться есть ли там пол. В общем случае могу это сделать так.
1
0 / 0 / 0
Регистрация: 09.10.2021
Сообщений: 14
02.12.2021, 14:20  [ТС]
Спасибо вам большое!!!
0
 Аватар для volodin661
6688 / 2279 / 348
Регистрация: 10.12.2013
Сообщений: 7,884
02.12.2021, 16:11
а чо, у Анны, Лизы и Джона один и тот же почтовый адрес ?

так называемый случай 3-х голового дракона.
0
2804 / 502 / 120
Регистрация: 26.09.2020
Сообщений: 949
Записей в блоге: 5
02.12.2021, 16:30
Цитата Сообщение от volodin661 Посмотреть сообщение
почтовый адрес
предположим за кадром и разный,
а вот новомодное «Дорогое» Анна, Лиза и Джон… не смутило?
0
1658 / 273 / 66
Регистрация: 03.06.2020
Сообщений: 692
02.12.2021, 19:18
Цитата Сообщение от iNNOKENTIY21 Посмотреть сообщение
а вот новомодное «Дорогое» Анна, Лиза и Джон… не смутило?
Судя по cut -f1 -d",", который берет из строки первое поле до разделителя, в файле с именами уже есть "Дорогие" в формате:

Code
1
2
3
Дорогая Анна, что-то еще
Дорогая Лиза, что-то еще
Дорогой Джон, что-то еще
А в файле с приглашением одна строка, где <name> заменяется переменной $name ("Дорогая Лиза", например):
Code
1
<name>, хочу пригласить тебя на свой день рождения!
1
 Аватар для alhaos
1929 / 545 / 154
Регистрация: 20.02.2019
Сообщений: 2,664
Записей в блоге: 65
03.12.2021, 07:25
Цитата Сообщение от iNNOKENTIY21 Посмотреть сообщение
а вот новомодное «Дорогое» Анна, Лиза и Джон… не смутило?
ну в свете некоторых тенденций я бы кодил в таком ключе...

PowerShell
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
PS C:\Users\alhaos> $Guests = @(
>>     @{name ='Анна' ; sex = "F"}
>>     @{name ='Лиза' ; sex = "F"}
>>     @{name ='Джон' ; sex = "M"}
>>     @{name ='Питэр' ; sex = "x3"}
>> )
PS C:\Users\alhaos>
PS C:\Users\alhaos> $AppealsDict = @{
>>     "F" = "Дорогая"
>>     "M" = "Дорогой"
>> }
PS C:\Users\alhaos>
PS C:\Users\alhaos> $circular = "{0} {1}, хочу пригласить тебя на свой день рождения!"
PS C:\Users\alhaos>
PS C:\Users\alhaos> foreach ($guest in $Guests) {
>>     $circular -f ($AppealsDict[$guest.sex] ?? 'Дорогое'), $guest.Name
>> }
Code
1
2
3
4
Дорогая Анна, хочу пригласить тебя на свой день рождения!
Дорогая Лиза, хочу пригласить тебя на свой день рождения!
Дорогой Джон, хочу пригласить тебя на свой день рождения!
Дорогое Питэр, хочу пригласить тебя на свой день рождения!
0
0 / 0 / 0
Регистрация: 09.10.2021
Сообщений: 14
03.12.2021, 17:47  [ТС]
Спасибо вам, но я пишу письмо на английском и там в любом случае будет "Dear Ann, Dear John" и т.д
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
03.12.2021, 17:47
Помогаю со студенческими работами здесь

DMA Circular mode
Всем привет! Объясните, пожалуйста, когда циклический буфер DMA полностью заполнен NTDR становится нулем, далее перезаписываются элементы с...

Circular datalinks are not allowed
В Borland C++6 строка Form1-&gt;DataSource1-&gt;DataSet = Form1-&gt;Query1; вызывает ошибку: Project Project2.exe raised exeption class...

Html Circular Raitnig
Как нарисовать такое вот(скрин прикреплен) средствами html\css + js?

Circular Picker - примеры
Всем привет. Ищу примеры создания своего UserControl для выбора числа по типу циферблата часов. В Material Design есть TimePicker, а мне...

Illegal Circular Use: Cseventnotes
:unsure:


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru