PDA

Показать полную графическую версию : [решено] Удаление строк в текстовом файле, как это сделать???


Страниц : [1] 2 3 4

VladZombie
19-09-2009, 19:39
Лежит папка а в ней все отчёты в текстовом виде, так вот надо удалить со всех текстовых документах строки где есть слова "mozila" как это сделать? Нашёл вот это type your_file.txt | findstr /v firefox.exe > temp.txt del your_file.txt rename temp.txt your_file.txt но он не удаляет ((((

gora
19-09-2009, 20:30
но он не удаляет »
а если так:type your_file.txt | findstr /i /v "mozila" > temp.txt
del your_file.txt
rename temp.txt your_file.txt

Rezan0FF
13-01-2012, 06:32
этот код удаляет если батник и файл лежат в одном каталоге, а как сделать, чтобы можно было удалить эту строчку со всех файлов с именем your_file.txt лежащих в этом каталоге и подкаталогов. Например со всего диска d?

shao
05-03-2012, 02:39
Коллеги , а как удалить символ в текстовом файле.
Нужно во всём тексте удалить кавычки. Везде...все...

gora
05-03-2012, 14:39
shao, попробуйте так:@Echo Off
SetLocal EnableDelayedExpansion
:: Обрабатываемый файл
Set file=e:\Temp\TC8setup_config.txt
:: Новый файл
Set newfile=e:\Temp\temp.txt

(For /f "usebackq delims=" %%a In ("%file%") Do (
Set ta=%%a
Echo !ta:"=!
))>"%newfile%"
Pause>Nul
Ограничения:
Пустые строки удаляются
Текст не должен содержать восклицательные знаки "!".

vovanwildbees
02-02-2015, 16:30
Здравствуйте, помогите пожалуйста решить задачу

Есть текстовый файл содержащий большое количество строк
нужно удалить строки содержащие определенные слова

пробовал это:
@echo off
SetLocal EnableExtensions EnableDelayedExpansion
set src=1.txt
set dest=1_1.txt
set seek=нужные слова
2>nul del "%dest%"
find /i "%seek%" < "%src%" > "%src%_"
exit /B

и вот это:
@echo off
type 1.txt | find /v /i "Ненужное слово" > file.temp
echo.Y | move file.temp 2.txt

строки удаляются корректно, но:
есть символ в виде квадрата, в начале каждой строки, как я понял это символ переноса строки,

при использовании доступных на этом форуме советов по автоудалению строк,
конечный файл получается без этих самых "квадратиков", хотя строки удаляются корректно

Что нужно добавить чтобы символ оставался нетронутым?

Iska
02-02-2015, 16:46
Есть текстовый файл содержащий большое количество строк »
строки удаляются корректно, но:
есть символ в виде квадрата, в начале каждой строки, как я понял это символ переноса строки, »
Упакуйте файл в архив. Архив выложите на RGhost — файлообменник (http://rghost.ru/). Ссылку на выложенный архив — сюда.

vovanwildbees
03-02-2015, 15:55
Iska спасибо что отозвались
вот файл http://rghost.ru/7DWx7YfvZ

"квадратики" видны только в стандартном блокноте

Iska
03-02-2015, 16:02
vovanwildbees, «квадратики» — это обычная табуляция. Надеюсь, коллеги теперь напишут потребное Вам.

gora
03-02-2015, 16:13
"квадратики" видны только в стандартном блокноте »
1 Ни каких квадратиков в стандартном Блокноте не вижу. :( (win7 х64)
есть символ в виде квадрата, в начале каждой строки, »
Это вряд ли про табуляцию, ибо в предложенном файле их (09h) 830 штук в пяти строках.
Из необычного: в конце каждой строки только 0Ah, а "парный" 0Dh отсутствует.
Может речь идет про этот символ?

Iska
03-02-2015, 16:25
Это вряд ли про табуляцию, ибо в предложенном файле их (09h) 830 штук в пяти строках.
Из необычного: в конце каждой строки только 0Ah, а "парный" 0Dh отсутствует. »
Точно. «Lf» есть, «Cr» нету. Unix-like style. А я просто-напросто попутал.

vovanwildbees
04-02-2015, 10:16
Скриншот http://rghost.ru/8jFBLgQHX

Iska
04-02-2015, 20:48
vovanwildbees, честно говоря, я сомневаюсь, что сие возможно сугубо пакетными файлами. Тут либо портированные из Unix утилиты типа sed, либо PoSH.

vovanwildbees
16-02-2015, 16:21
Спасибо! Вопрос можно снять с обсуждения.

daradan
09-10-2015, 05:46
Подскажите пожалуйста.
Как удалить текст, в которой содержатся кавычки?
в файлах\*\content\launcher\meta.json
\*\content\lockscreen\meta.json
\*\meta.jsonгде * динамическое название папки. Пример\620\content\launcher\meta.json
\620\content\lockscreen\meta.json
\620\meta.json

\790\content\launcher\meta.json
\790\content\lockscreen\meta.json
\790\meta.jsonнеобходимо удалить текст,"is_Download_by_Period":trueСпасибо

Foreigner
09-10-2015, 08:09
@echo off
setlocal

for /f "tokens=*" %%i in ('dir /b /s "C:\Start Folder\meta.json"') do (

sed (http://gnuwin32.sourceforge.net/packages/sed.htm) "s/,\"is_Download_by_Period\":true//" "%%i" 1> "%tmp%\%%~nxi"
move "%tmp%\%%~nxi" "%%i"

)

daradan
09-10-2015, 08:29
ForeignerСпасибо, но правильно ли я сделал?
создал в корне (где лежат произвольные папки) файл с расширением cmd и скопировал ваш скрипт. Запустил, выводит ошибкуНе удается найти файл 'dir /b /s "C:\Start Folder\meta.json".
Вроде разобрался. Спасибо еще раз. Не хватало знака ' после meta.json"

SharkyEXE
25-08-2018, 19:16
Всем здравствуйте.

Оригинальынй файл bouquets.tv , из которого надо удалить строку #SERVICE 1:7:1:0:0:0:0:0:0:0:FROM BOUQUET "userbouquet.LastScanned.tv" ORDER BY bouquet
#NAME User - bouquets (TV)
#SERVICE 1:7:1:0:0:0:0:0:0:0:FROM BOUQUET "userbouquet.dbe01.tv" ORDER BY bouquet
#SERVICE 1:7:1:0:0:0:0:0:0:0:FROM BOUQUET "userbouquet.dbe02.tv" ORDER BY bouquet
#SERVICE 1:7:1:0:0:0:0:0:0:0:FROM BOUQUET "userbouquet.dbe03.tv" ORDER BY bouquet
#SERVICE 1:7:1:0:0:0:0:0:0:0:FROM BOUQUET "userbouquet.dbe04.tv" ORDER BY bouquet
#SERVICE 1:7:1:0:0:0:0:0:0:0:FROM BOUQUET "userbouquet.favourites.tv" ORDER BY bouquet
#SERVICE 1:7:1:0:0:0:0:0:0:0:FROM BOUQUET "userbouquet.dbe06.tv" ORDER BY bouquet
#SERVICE 1:7:1:0:0:0:0:0:0:0:FROM BOUQUET "userbouquet.dbe05.tv" ORDER BY bouquet
#SERVICE 1:7:1:0:0:0:0:0:0:0:FROM BOUQUET "userbouquet.LastScanned.tv" ORDER BY bouquet
Поправил этот код тынц (http://forum.oszone.net/post-1222745-2.html) для себя
type bouquets.tv | findstr /i /v "#SERVICE 1:7:1:0:0:0:0:0:0:0:FROM BOUQUET "userbouquet.LastScanned.tv"" > temp_bouquets.tv
del bouquets.tv
rename temp_bouquets.tv bouquets.tv
После отработки - пустой файл bouquets.tv размером 0 , внутри пусто
Пожалуйста , помогите мне
Спасибо.

Iska
25-08-2018, 19:45
@echo off
setlocal enableextensions enabledelayedexpansion

type "bouquets.tv" | >"temp_bouquets.tv" findstr /i /v /l /c:"#SERVICE 1:7:1:0:0:0:0:0:0:0:FROM BOUQUET \"userbouquet.LastScanned.tv\""

del "bouquets.tv"
rename "temp_bouquets.tv" "bouquets.tv"

endlocal
exit /b 0

v79italya
23-03-2020, 20:49
Доброго времени суток
Скажите пожалуйста, каким vbs-скриптом можно удалить в файлах CSV строки, содержащие null(в строке дата и только null-и)2020-02-04,4.010000,4.020000,3.990000,3.990000,3.990000,314769
2020-02-05,4.000000,4.000000,3.990000,3.990000,3.990000,350516
2020-02-06,3.990000,4.010000,3.990000,3.990000,3.990000,353542
2020-02-07,4.000000,4.010000,4.000000,4.000000,4.000000,744968
2020-02-10,4.000000,4.000000,4.000000,4.000000,4.000000,0
2020-02-11,null,null,null,null,null,null
2020-02-12,null,null,null,null,null,null
2020-02-13,null,null,null,null,null,null
2020-02-14,null,null,null,null,null,null
2020-02-18,null,null,null,null,null,null
2020-02-19,null,null,null,null,null,null
2020-02-20,null,null,null,null,null,null
Папка с файлами находится по адресу: D:\Новая папка

Можно еще одну проблему решить. Есть множество файлов тхт такого вида:
10000530155:angry_ele.03
10000564625:biloshka1448
10000605518:ruslan.ahm04
Как удалить все после первого двоеточия вместе с двоеточием?




© OSzone.net 2001-2012