2013-05-28 4 views
4

У меня есть тысячи текстовых файлов с пустой первой строкой. Можно ли удалить эту строку во всех файлах одновременно?Как удалить первую пустую строку в нескольких файлах?

enter image description here

+0

только используя блокнот ++? – MaVRoSCy

+0

Возможное решение для скриптового скрипта - http://stackoverflow.com/questions/11226938/delete-first-line-of-file-if-its-empty Может быть проще, чем делать это в Notepad ++ для нескольких файлов. – DaV

+0

Хотя можно найти замену в нескольких файлах, используя опцию «Найти в файлах» в блокноте ++, я не знаю, как совместить только первую пустую строку. – Noel

ответ

1

Вам нужен сценарий летучей мыши, как этот

@echo off 
for %%i in (*.txt) do (
more +1 "%%~fi">>temp 
del "%%~fi" 
ren temp "%%~nxi" 
) 

Сохранить выше код как something.bat и запустить его в каталоге.

+0

Это работает довольно хорошо и довольно быстро. Спасибо. – micco

1

Это будет работать с помощью Notepad ++ (протестировано с версией 6.2.3):

\A[\r\n]+

Объяснение:

\A и \Z всегда совпадают начало и конец всего файла, независимо от многострочной настройки.

Примечание. Это регулярное выражение несколько более общее, чем запрошено ОП. Он удалит любое количество последовательных исходных пустых строк, завершенных с любой последовательностью прерывания строки (\r\n, \r или \n). Ничто не хуже, чем изменение тысяч файлов, только чтобы найти позже, что пара имеет разную последовательность строк или имеет несколько начальных пустых строк.

Альтернатива:

Другой регулярное выражение, которое работает так:

(?<!.)[\r\n]+

Объяснение:

Это использует негативный взгляд фоновым, (?<!), чтобы убедиться, что не существует никакого символа до последовательности CR s и LF s ,

Примечание. Для этого необходимо установить галочку . matches newline.

Смежные вопросы