|
| Дата |
|
USD/RUB | 90.2486 | BTC/USD | 69112.7194 |
|
|
|
Скрипты, программы и технические решения Обсуждаем скрипты, программы и новые технологии. |
24.06.2015, 00:48
|
Start Post: Массовое изменение txt.
|
mike$a
Регистрация: 16.09.2010
Сообщений: 128
Бабло: $67072
|
всем доброй ночи.подскажите чем можно добавить массово текст в первую строку тхт файлов(общего признака у них нету).
__________________
|
|
|
24.06.2015, 09:21
|
#12
|
Senior Member
Регистрация: 18.08.2007
Сообщений: 1,098
Бабло: $199375
|
Цитата:
Сообщение от mikesa
всем доброй ночи.подскажите чем можно добавить массово текст в первую строку тхт файлов(общего признака у них нету).
|
код на python
PHP код:
#!/usr/bin/env python2 # coding: utf-8
import os import shutil
added_line = 'lalallala'
for root, dirs, files in os.walk('./старт_дир'): for file_name in files: if not file_name.endswith('.txt'): continue file_name_path = os.path.join(root, file_name) with open(file_name_path) as from_file, open('_', 'w') as to_file: to_file.write(added_line + os.linesep) shutil.copyfileobj(from_file, to_file) shutil.move('_', file_name_path)
тут с прохождением по всем папкам от начала заданного пути, и проверка на расширение файла, если файл .txt то вставляем строку
Цитата:
Сообщение от arximed
наверное, экранировать нужно спец символы аля слешей в урлах.
|
наверное отказаться от ужаса vbscript
|
|
|
24.06.2015, 10:13
|
#13
|
Senior Member
Регистрация: 13.04.2011
Сообщений: 1,136
Бабло: $166620
|
Цитата:
Сообщение от mikesa
1stuaalex э нетне получилось..просто текст вставляет,а вот когда там ссылка еще с текстом..ошибка
|
arximed, прав нужно экранировать спецсимволы, если ты еще питон не поставлил и не воспользовался советом masolit-а, то могу помочь преобразовать строку. )
Цитата:
наверное отказаться от ужаса vbscript
|
таки да, я сам даже запланировал изучить питон, в следующей жизни, но боюсь, пока vbs в винде запускаются, буду и дальше идти по легкому пути )
__________________
Зло присуще любому скоплению людей
|
|
|
24.06.2015, 11:46
|
#14
|
Senior Member
Регистрация: 18.08.2007
Сообщений: 1,098
Бабло: $199375
|
Цитата:
Сообщение от 1stuaalex
пока vbs в винде запускаются, буду и дальше идти по легкому пути )
|
это походу сложный путь начиная от корявости, глюковатости и громоздкости vb скриптов до отсутствия кроссплатформенности
|
|
|
24.06.2015, 12:16
|
#15
|
Senior Member
Регистрация: 19.04.2007
Сообщений: 2,393
Бабло: $314345
|
Цитата:
Сообщение от mikesa
всем доброй ночи.подскажите чем можно добавить массово текст в первую строку тхт файлов(общего признака у них нету).
|
PHP код:
<?php
set_time_limit(0);
$text = 'текст, который надо добавить в начало всех txt файлов в папке';
foreach (glob('*.txt') as $file) { file_put_contents($file, $text.file_get_contents($file)); }
?>
Скрипт положить в папку, где лежат все нужные для обработки .txt файлы
|
|
|
24.06.2015, 12:34
|
#16
|
Senior Member
Регистрация: 13.04.2011
Сообщений: 1,136
Бабло: $166620
|
Цитата:
Сообщение от masolit
это походу сложный путь начиная от корявости, глюковатости и громоздкости vb скриптов до отсутствия кроссплатформенности
|
согласен, но в случае платформы win питон и php надо поставить, хотя это дело нескольких минут, добавить поддержку командной строки в php.
Я это корявое использую? потому что могу за две минуты сделать одноразовую мелочь, которая сработает и я забуду и пойду дальше, вместо того чтобы час искать синтаксис специальных команд-аналогов sed (или ставить windows-порт sed)
__________________
Зло присуще любому скоплению людей
|
|
|
24.06.2015, 16:47
|
#17
|
Отмороженый Сибиряк
Регистрация: 09.09.2014
Сообщений: 1,843
Бабло: $250100
|
Вот же вам человек дал команду для sed'a, куда еще проще и быстрее...
Цитата:
Сообщение от 1stuaalex
Я это корявое использую? потому что могу за две минуты сделать одноразовую мелочь, которая сработает и я забуду и пойду дальше, вместо того чтобы час искать синтаксис специальных команд-аналогов sed (или ставить windows-порт sed)
|
Установка sed в винды заключается в копировании нескольких файлов в директорию винды
__________________
Знать путь и пройти его — не одно и то же. Pharmcash & PharmcashUSA - знаем, проходили... Лидеры в фарме
|
|
|
24.06.2015, 16:56
|
#18
|
KrebsonSecurity
Регистрация: 15.05.2010
Адрес: в Зазеркалье
Сообщений: 1,646
Бабло: $426045
|
регулярка в нотепаде++ ну и нотепад умеет изменять все файлы в папке одновременно.
типа так , заменить это: ^ на текст который надо
|
|
|
24.06.2015, 17:29
|
#19
|
Member
Регистрация: 29.08.2009
Сообщений: 88
Бабло: $38852
|
TextPipe
|
|
|
24.06.2015, 18:28
|
#20
|
Senior Member
Регистрация: 24.09.2009
Сообщений: 821
Бабло: $106455
|
Цитата:
Сообщение от hitman
TextPipe
|
Я всё ждал, предложит ли кто самый простой вариант или нет, пока кодеры дерутся
|
|
|
24.06.2015, 19:33
|
#21
|
Senior Member
Регистрация: 18.08.2007
Сообщений: 1,098
Бабло: $199375
|
а если не винда ? линукс или мак ?
|
|
|
|