Форум программистов, компьютерный форум, киберфорум
PowerShell
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.85/34: Рейтинг темы: голосов - 34, средняя оценка - 4.85
0 / 0 / 0
Регистрация: 07.09.2018
Сообщений: 31

Поменять четные и нечетные слова местами

24.09.2018, 21:31. Показов 7189. Ответов 24

Студворк — интернет-сервис помощи студентам
Доброго времени суток.

Помогите пожалуйста написать скрипт на powershell.

Нужно во входном потоке строк, которые считываются из файла, поменять в каждой строке четные и нечетные слова местами. Результат записать в отдельный файл. Имена файлов задать через параметры командной строки.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
24.09.2018, 21:31
Ответы с готовыми решениями:

Поменять четные и нечетные слова местами
Доброго времени суток. Помогите пожалуйста написать скрипт на cmd. Нужно во входном потоке строк, которые считываются из файла,...

Поменять местами чётные и нечётные слова
Разработать программу для ввода преобразования вывода строк. 1.Без использования методов класса String обработкой массива символами. ...

Поменять местами четные и нечетные символы слова
Как поменять местами четные и нечетные символы слова? Заранее спс!

24
 Аватар для KDE777
1887 / 1109 / 428
Регистрация: 22.01.2016
Сообщений: 3,050
25.09.2018, 21:01
Лучший ответ Сообщение было отмечено DerriK_N как решение

Решение

Студворк — интернет-сервис помощи студентам
Цитата Сообщение от DerriK_N Посмотреть сообщение
забросить в *.txt, и создать с него файл под названием convert.cmd
Нет, надо эту строчку сохранить в файле convert.cmd

PowerShell
1
powershell.exe -ExecutionPolicy Bypass -NonInteractive -NoProfile -NoLogo -Command "&{gc %1 |%%{(($a=$_.split())|%%{$i=1}{$a[$i,($i-1)];$i+=2})-join' '}|sc %2}"
Цитата Сообщение от DerriK_N Посмотреть сообщение
Потом зайти в PowerShell и запустить вот этот код
Нет, потом запустить cmd.exe (Командная строка) и в ней выполнить:

Code
1
convert.cmd c:\1\text.txt c:\1\text_out.txt
Вместо "c:\1\text.txt" указать полный путь к исходному тексту, а вместо "c:\1\text_out.txt" полный путь к файлу, в котором будет сохранён конвертированный вариант.

И да, в cmd нужно перейти в папку, где сохранён convert.cmd или указать полный путь к нему, например:

Code
1
c:\>c:\scripts\convert.cmd c:\1\text.txt c:\1\text_out.txt
1
0 / 0 / 0
Регистрация: 07.09.2018
Сообщений: 31
25.09.2018, 21:04  [ТС]
Значит гайд как запускать это все для таких чайников как я:
1) Вот этот код:
C++
1
powershell.exe -ExecutionPolicy Bypass -NonInteractive -NoProfile -NoLogo -Command "&{gc %1 |%%{(($a=$_.split())|%%{$i=1}{$a[$i,($i-1)];$i+=2})-join' '}|sc %2}"
нужно забросить в *.txt, и создать с него файл под названием convert.cmd
2) Потом зайти через Win+R в cmd
3) Через команду E: переходим в директиву нашего диска, У меня в диске Е, поэтому в Е захожу (cd не пашет);
4) Потом запустить вот этот код
C++
1
Е:\>convert.cmd c:\1\text.txt c:\1\text_out.txt
и вуаля))
СПАСИБО БОЛЬШОЕ ВСЕМ КТО ПОМАГАЛ!!! Просто никогда не работал в cmd, поэтому так дотошно вас напрягал, извените))
Всем парням + в рейтинг и в карму!)) Тему можно закрывать!)))
0
Любознательный
 Аватар для YuS_2
7407 / 2260 / 361
Регистрация: 10.03.2016
Сообщений: 5,216
25.09.2018, 21:35
Цитата Сообщение от DerriK_N Посмотреть сообщение
текстовый файл можно брать любой
любой, да не сосем... это ведь cmd, там всё обложено ограничениями...
Ок, преподаватель вряд ли примет решение с участием powershell, даже запускаемый из cmd.
Вот чистый cmd:
Windows Batch file
1
2
3
4
5
6
7
8
9
10
11
12
@echo off
set "var=%~1"
if not defined var (echo Требуется указать файл для разбора&pause&exit /b)
 
set "out=out.txt"
 
setlocal enabledelayedexpansion
(for /f "tokens=1-26" %%a in ('type "%var%"') do (
    set "x=%%b %%a %%d %%c %%f %%e %%h %%g %%j %%i %%l %%k %%n %%m %%p %%o %%r %%q %%t %%s %%v %%u %%x %%w %%z %%y"
    echo !x:  = !
))>"%out%"
endlocal
С оговорками:
1. В конце строк будут присутствовать лишние пробелы
2. Слов в строке не должно быть больше 26
3. В качестве параметра обязательно указать один текстовый файл
1
0 / 0 / 0
Регистрация: 07.09.2018
Сообщений: 31
25.09.2018, 23:02  [ТС]
Добавлено через 12 минут
Да, все работает только один вопрос:
На выходе я получаю
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
E:\OS>(
set "x=two one  row                      "  
 echo !x:  = ! 
) 
two one row           
 
E:\OS>(
set "x=full call  need                      "  
 echo !x:  = ! 
) 
full call need           
 
E:\OS>(
set "x=me give  please                      "  
 echo !x:  = ! 
) 
me give please
Возможно ли убрать
C++
1
2
3
E:\OS>(
set "x=two one  row                      "  
 echo !x:  = !
и остальные две части кода, что бы остались только слова??

Добавлено через 57 минут
Хотя впринципе, это может уже и не особо важно.
Спасибо большое!))
0
Любознательный
 Аватар для YuS_2
7407 / 2260 / 361
Регистрация: 10.03.2016
Сообщений: 5,216
26.09.2018, 08:40
Цитата Сообщение от DerriK_N Посмотреть сообщение
На выходе я получаю
на выходе чего? тот код, который дал я, создает на выходе файл, а на вход принимает тоже файл...
тот сценарий необходимо поместить в файл с кодировкой cp866, например, run.bat - строка запуска тогда будет:
Windows Batch file
1
run.bat text.txt
-если текстовый файл находится рядом со сценарием.

либо так:
Windows Batch file
1
run.bat "x:\какой-то каталог\ещё один каталог\text.txt"
- если требуется запускать сценарий из любого места, а текстовый файл расположен в обозначенном месте дерева каталогов.
выходной файл будет создан рядом со сценарием.

Цитата Сообщение от DerriK_N Посмотреть сообщение
и остальные две части кода, что бы остались только слова??
какие части? в файле и будут только слова, ничего другого, кроме лишних пробелов в конце строк.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
26.09.2018, 08:40

Поменять местами четные и нечетные, по порядку слова
Здравствуйте. Обрисую ситуацию: есть задание "Ввести с клавиатуры предложение. Поменять местами четные и нечетные, по порядку слова."...

Как поменять местами четные и нечетные слова
Задание таково, нужно поменять так что-бы четные и нечетные слова поменялись местами. Заранее спасибо.

Дано предложение, слова в нем разделены пробелом, поменять местами четные и нечетные по порядку следования слова
Пожалуйста помогите решить задачу по Java до четверга (12.11.2010) Дано предложение, слова в нем разделены пробелом, поменять местами...

Поменять местами все четные и нечетные слова в строке
Задана строка символов, содержащая два или более слов, разделенных пробелами. Написать программу, меняющую местами все четные и нечетные...

Поменять местами четные и нечетные по порядку следования слова
Дано предложение, слова в нем разделены пробелом, поменять местами четные и нечетные по порядку следования слова. Напишите пожалуйста...


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

Или воспользуйтесь поиском по форуму:
25
Ответ Создать тему
Новые блоги и статьи
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
Нашел вот забавное видео о измерениях. Лучшее что я видел на эту тему
kumehtar 26.08.2026
ILETXiw9bMQ Основная суть и тезисы по измерениям: 0D (Нулевое измерение): точка, не имеющая длины, ширины, высоты или объема. Объект не может перемещаться в 0D. 1D (Первое измерение):. . .
[EasyBuilder Pro] Памятка по разработке для панелей Weintek
ФедосеевПавел 26.08.2026
Памятка по разработке для панелей Weintek ВВЕДЕНИЕ Ранее, при реализации проектов основное внимание уделял разработке управляющей программы для контроллера, а панели оператора доставалось время. . .
Модель по догадкам
anaschu 25.08.2026
Прошло две недели. Я уже рассказывал, как разговаривал с сотрудниками у сортировки и как понял, что главная ветка — не про приёмку, а про отбор. Но тогда я думал, что понял механику. На этой неделе я. . .
Запись в регистр сведений независимо от заполненности табличной части
Maks 25.08.2026
Реализация из решения ниже выполнена на нетиповом документе с несколькими табличными частями, разработанного в КА2. Задача: Обеспечить запись документа в регистр сведений независимо от. . .
Ноутбук Альфария
kumehtar 24.08.2026
Встретился тут в сети ноутбук Альфария, примарха Альфа-Легиона. Хотя возможно, это ноутбук Омегона, разумеется. Ну как вам?
Мастера простых решений
DevAlt 23.08.2026
В сишарп стэках winforms, да и wpf существует сложная система связывания источниках данных и элементов формы(текстовые поля и метки), опирается все это на технологию событий и мета. . .
Цена ошибки
DevAlt 23.08.2026
Человек я беспокойный и потому заинтересовался OCaml, в чате форсили функторы модулей как суперфичу. Пытаясь отдуплить концепт, наткнулся на тутор с простым примером. А главный принцип обучения от. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru