3 / 2 / 1
Регистрация: 08.02.2018
Сообщений: 70
|
|
1 | |
CMD/BAT: удалить текст (весь) после знака "]"15.08.2019, 15:58. Показов 4977. Ответов 10
Метки нет (Все метки)
Всем привет. можно как-то через for в bat'нике удалить весь текст, который я выделил жирным?
D:\Robot\std.asi.dll] lpLibFileName: C:\Users\me\AppData\Local\Temp\\data.dat} нужно удалить начиная с ] и заканч. }. Спасибо
0
|
15.08.2019, 15:58 | |
Ответы с готовыми решениями:
10
Удалить текст (весь) после знака "." и добавить после точки (m3u8) Как удалить весь текст после тега? Удалить в файле INPUT.TXT весь текст после заданной литеры Найти вторую точку в строке и удалить весь текст после нее Прочитать весь string после знака || |
4334 / 2124 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
|
|
15.08.2019, 23:48 | 2 |
будет иметь значение где этот текст, в каком файле, в какой кодировке, как расположен и что еще кроме этой строки в тексте присутствует, одна ли она или есть похожие и если есть как идентифицировать именно искомую.
0
|
3 / 2 / 1
Регистрация: 08.02.2018
Сообщений: 70
|
|
16.08.2019, 13:47 [ТС] | 3 |
Текст в %~dp0. Файл log.txt. Кодировка UTF-8. Только одна строка.
Добавлено через 3 часа 39 минут извините, но выдали другой текстовик. в нем несколько строк, выглядят они так: [WRITE] > [Internet] > [C:\WINDOWS\System32\wininit.dll] > {lpszAgent: Mozilla/5.0} мне нужно чтобы осталось только то, что выделено жирным, и так в каждой строке, но разный путь к файлу.
0
|
4334 / 2124 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
|
|
16.08.2019, 14:37 | 4 |
ждем третьего файла или работать со вторым или учитывать и первый и второй, но тогда сложнее будет выбирать маску типа
^[A-Z]\:\\[^\\]* так как там их две, однозначно идите в powershell, там такие вопросы решаются легко.
0
|
3 / 2 / 1
Регистрация: 08.02.2018
Сообщений: 70
|
|
16.08.2019, 15:24 [ТС] | 5 |
всё-таки мне нужен второй вариант, т.е. последний. спасибо.
Добавлено через 1 минуту последнее, что мне надо - вывести потом результат в echo
0
|
4334 / 2124 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
|
||||||
16.08.2019, 17:55 | 6 | |||||
Сообщение было отмечено Moxito6 как решение
Решение
параллельно вывод в новый файл
2
|
3 / 2 / 1
Регистрация: 08.02.2018
Сообщений: 70
|
|
17.08.2019, 10:38 [ТС] | 7 |
Большое спасибо alpap'у!
0
|
3 / 2 / 1
Регистрация: 08.02.2018
Сообщений: 70
|
|
18.08.2019, 11:55 [ТС] | 8 |
Снова здравствуйте.
После данных действий все получилось хорошо, в файл log.log записались данные. Но я хотел вывести каждую строку и спросить юзера - удалять или нет Файл log.log: C:\ProgramData\Database new\db C:\Backup Database\Database new\db Скрипт: for /f "usebackq tokens=5 delims=[]" %%a in ("log.txt") do echo %%a& >>log.log echo %%a set "mmlog=%temp%\log.log" For /F %%i In ('type "%mmlog%"') Do Set "DF=%%i" echo %DF% и скрипт выводит мне: "C:\ProgramData\Database", т.е. не учитывает пробелы. Можно как-то учитывать пробелы и выводить каждую строку, с выбором ответа пользователя? Не по теме:
0
|
4334 / 2124 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
|
|
18.08.2019, 15:55 | 9 |
Moxito6,
охохох ... давайте по порядку во-первых что это за безобразие и зачем именно там и есть неправильный вывод, но не в этом дело, все тоже выводит и у меня и правильно а дело вот в чем это, допустим, понятно а вот это уже нет строки все в одном файле? Если надо удалить какую-то строку надо переписывать весь файл - cmd не умеет по другому или для каждого юзера один файл и там одна строка - тогда нужен ли файл вообще? Может проще сразу забрать вывод этого чего-то и из него спрашивать. Опишите задачу конкретнее что вы делаете в целом, какая цель Потому как я совершенно не понимаю - загонять путь в файл, спрашивать нужен ли путь и удалять файл с этим путем, что это дает, какой смысл этой операции?
0
|
3 / 2 / 1
Регистрация: 08.02.2018
Сообщений: 70
|
|
18.08.2019, 18:15 [ТС] | 10 |
По-поводу...
1. "что это за безобразие" - это я пытался. 2. "выводит и у меня и правильно" - может, и выводит, но пробелы в файле log.log (это файл, где есть пути к базам данных) 3. строки все в одном файле. нужно взять каждый путь к базам данных (находятся в log.log) и спросить пользователя - удалять эту базу данных или нет? Мне попросту надо удалить старые базы данных, которые мы в первых сообщениях отсеяли, т.е. пути к эти старым базам находятся в log.log
0
|
4334 / 2124 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
|
||||||
18.08.2019, 18:48 | 11 | |||||
Сообщение было отмечено Moxito6 как решение
Решение
так?
2
|
18.08.2019, 18:48 | |
18.08.2019, 18:48 | |
Помогаю со студенческими работами здесь
11
Удалить все запятые из строки и подсчитать количество символов "F", стоящих после знака "+", а так же после знака "-" Batch (CMD/BAT) несколько заданий на CMD/BAT Не закрывается cmd после выполнения .bat Удалить весь текст кроме подсвеченного Console не дать удалить весь текст Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |