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

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

Ответить
Настройки темы
Любой язык - [решено] удаление одинаковых ссылок

Ветеран


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

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


Здравствуйте, подскажите, пожалуйста, как можно удалить ссылки из первого файла тхт, если они уже есть во втором файле тхт:

пример:

в первом блокноте ссылки:

Код: Выделить весь код
http://s5.depic.me/01435/07sv55ge07ui_o/0129swl_m.jpg
http://s5.depic.me/01435/m9fgc4zc0aub_o/0130swl_t.jpg
http://s5.depic.me/01435/cddclxav8syg_o/0130swl_m.jpg
http://s5.depic.me/01435/g4bol54sgci3_o/0131swl_m.jpg
http://s7.depic.me/01435/w9c1kgq8ht5m_o/0131swl_t.jpg
http://s5.depic.me/01435/y7pkiuinqxof_o/0132swl_m.jpg
http://s7.depic.me/01435/g0rhpr5qwkt0_o/0132swl_t.jpg
http://s7.depic.me/01435/bxe3mqeapav8_o/0133swl_t.jpg
во втором блокноте:

Код: Выделить весь код
http://s5.depic.me/01435/g4bol54sgci3_o/0131swl_m.jpg
http://s7.depic.me/01435/w9c1kgq8ht5m_o/0131swl_t.jpg
после применения скрипта, первый блокнот должен измениться на:

Код: Выделить весь код
http://s5.depic.me/01435/07sv55ge07ui_o/0129swl_m.jpg
http://s5.depic.me/01435/m9fgc4zc0aub_o/0130swl_t.jpg
http://s5.depic.me/01435/cddclxav8syg_o/0130swl_m.jpg
http://s5.depic.me/01435/y7pkiuinqxof_o/0132swl_m.jpg
http://s7.depic.me/01435/g0rhpr5qwkt0_o/0132swl_t.jpg
http://s7.depic.me/01435/bxe3mqeapav8_o/0133swl_t.jpg
т.е. пустых строк после удаления не должно остаться

Отправлено: 13:08, 07-04-2015

 

Ветеран


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

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


Код: Выделить весь код
(diff (gc 1.txt) (gc 2.txt)).InputObject > r.txt
Это сообщение посчитали полезным следующие участники:

Отправлено: 13:15, 07-04-2015 | #2



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

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


Ветеран


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

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


спасибо, работает

Отправлено: 13:36, 07-04-2015 | #3


Ветеран


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

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


Ещё один вариант:
Код: Выделить весь код
<"Source.txt" >"Destination.txt" findstr.exe /i /v /g:"Filter.txt"
Это сообщение посчитали полезным следующие участники:

Отправлено: 15:47, 07-04-2015 | #4


Ветеран


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

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


Цитата Iska:
Ещё один вариант:
Код:
<"Source.txt" >"Destination.txt" findstr.exe /i /v /g:"Filter.txt" »
а это где выполнять? в файл ps1 попробовал, не получилось, в бат попробовал вот так:

Код: Выделить весь код
<"1.txt" >"2.txt" findstr.exe /i /v /g:"Filter.txt"
удалилось все из 2 ого блокнота

сейчас так сделал в бат

Код: Выделить весь код
<"1.txt" >"2.txt" findstr.exe /i /v /g:"3.txt"
в 1txt ссылки, в 3тхт то, что должно отминусоваться, в 2тхт результат должен быть?

Отправлено: 16:47, 07-04-2015 | #5


Ветеран


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

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


Цитата Alexander_88:
а это где выполнять? »
В командной строке. В пакетном файле.

Цитата Alexander_88:
в бат попробовал вот так: »
Попробуйте вот так:
Код: Выделить весь код
<"1.txt" >"Destination.txt" findstr.exe /i /v /g:"2.txt"
«1.txt» — Ваш исходный файл. «2.txt» — файл с исключениями. «Destination.txt» — результат.
Это сообщение посчитали полезным следующие участники:

Отправлено: 17:07, 07-04-2015 | #6


Ветеран


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

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


попробовал, появилось черное окно, но оно не закрывается, создался файл Destination.txt, но он пустой

Отправлено: 17:52, 07-04-2015 | #7


Ветеран


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

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


Alexander_88, у Вас содержимое исходного файла не оканчивается переводом на новую строку, а в этом случае синтаксическая конструкция
Код: Выделить весь код
"file"<findstr...
не подходит.

Вот так должно сработать:
Код: Выделить весь код
>"Destination.txt" findstr.exe /i /v /g:"2.txt" "1.txt"
.
Это сообщение посчитали полезным следующие участники:

Отправлено: 18:15, 07-04-2015 | #8


Ветеран


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

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


Iska Работает, спасибо, точно из - за отсутствия пустой строки, на самом деле она у меня есть в исходниках, просто я для них уже взял 1ое решение, а для второго решения просто решил протестировать, быстро создал два блокнота, накидал ссылок, а пустую строку не поставил в конце, не знал, что из - за нее может не работать
Georgio Ваше решение тоже работает, спасибо.

Теперь у меня будет 3 решения на всякий пожарный

Отправлено: 18:36, 07-04-2015 | #9



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] Удаление одинаковых файлов в подкаталогах njg Скриптовые языки администрирования Windows 1 18-11-2011 04:29
CMD/BAT - [решено] Удаление одинаковых файлов по размеру Arsenik77 Скриптовые языки администрирования Windows 27 08-08-2011 04:53
PowerShell - удаление дефолтных ссылок AntiZero Скриптовые языки администрирования Windows 0 04-03-2011 22:49
[решено] Удаление одинаковых файлов Tonny_Bennet Программирование в *nix 3 14-12-2010 16:44
удаление одинаковых папок в под папках clop1000 Хочу все знать 5 17-11-2007 00:51




 
Переход