Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Нужно удалить в строках все символы до определенного

Ответить
Настройки темы
CMD/BAT - Нужно удалить в строках все символы до определенного

Новый участник


Сообщения: 11
Благодарности: 0

Профиль | Отправить PM | Цитировать


Всем привет, вопросы нуба к знающим

Помогите с такими операциями, как их реализовать?

1. Есть список строк, в каждой из которых присутствует символ @ нужно удалить всё что идет до этого символа в каждой строке.

Как пример, есть список вида:

abcde@abcde
abcde@12345
abcde@1ab2d3

на выходе нужно получить:

@abcde
@12345
@1ab2d3


2. В похожем списке, где в каждой строке присутствует символ @, нужно поменять местами всё, что идет до символа @ с тем, что идет после этого символа

Как пример, есть список вида:

abcde@1122334455
asdfg@zxcvb
bbbbb22222@11111aaaaa

на выходе нужно получить:

1122334455@abcde
zxcvb@asdfg
11111aaaaa@bbbbb22222

2ой вопрос мб не так просто реализовать, но может кто подскажет хотя бы по-первому, как решить

Отправлено: 13:17, 21-06-2019

 

Ветеран


Contributor


Сообщения: 2735
Благодарности: 1699

Профиль | Отправить PM | Цитировать


maxload, Я думал уже каникулы
Решение в обоих случаях отличается мизерабельно.
1
Код: Выделить весь код
@Echo Off
	Set "FileIn=Z:\Box_In\spisok1.txt"
	>"%FileIn%.tmp" (FOR /F "usebackq tokens=1,* delims=@" %%i IN ("%FileIn%") DO If Not "%%j"=="" (Echo @%%j) Else (Echo %%i))
	>nul Move /Y "%FileIn%.tmp" "%FileIn%" 
Exit /B
2
Код: Выделить весь код
@Echo Off
	Set "FileIn=Z:\Box_In\spisok2.txt"
	>"%FileIn%.tmp" (FOR /F "usebackq tokens=1,* delims=@" %%i IN ("%FileIn%") DO If Not "%%j"=="" (Echo %%j@%%i) Else (Echo %%i))
	>nul Move /Y "%FileIn%.tmp" "%FileIn%" 
Exit /B

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.


Последний раз редактировалось megaloman, 21-06-2019 в 14:21.

Это сообщение посчитали полезным следующие участники:

Отправлено: 14:14, 21-06-2019 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 11
Благодарности: 0

Профиль | Отправить PM | Цитировать


спасибо!

Цитата megaloman:
maxload, Я думал уже каникулы »
А что только школьники не умеют этого? )

Отправлено: 17:28, 21-06-2019 | #3


Ветеран


Сообщения: 27449
Благодарности: 8088

Профиль | Отправить PM | Цитировать


Цитата maxload:
А что только школьники не умеют этого? ) »
Нет, ещё и студенты.

Отправлено: 11:10, 22-06-2019 | #4



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Нужно удалить в строках все символы до определенного

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
удалить все небуквенно-числовые символы оставив смайлики laraaa Вебмастеру 0 13-08-2015 16:01
CMD/BAT - [решено] Удалить из файла "Test.txt" все символы звездочка * ufooo Скриптовые языки администрирования Windows 10 17-05-2015 14:29
CMD/BAT - [решено] Как удалить из папки все файлы определенного размера? Alex_smo Скриптовые языки администрирования Windows 6 29-07-2014 19:50
CMD/BAT - нужно удалить все файлы расширения .jpg на жестком диске knvin Скриптовые языки администрирования Windows 2 10-04-2014 17:48
[решено] Удалить все символы Enter (переход на след строку) из текста sashadeg AutoIt 9 07-02-2010 05:29




 
Переход