|
19 / 10 / 1
Регистрация: 22.07.2015
Сообщений: 908
|
||||||||||||||||
Удалить текст между строками БЕЗ удаления самих строк27.11.2017, 20:35. Показов 5190. Ответов 24
Метки нет (Все метки)
Например есть такие строки
Что я делаю не так? Или посоветуйте другой инструмент.
0
|
||||||||||||||||
| 27.11.2017, 20:35 | |
|
Ответы с готовыми решениями:
24
Как из текстового файла удалить дубликаты строк и пробелы между строками?
|
|
2796 / 2039 / 682
Регистрация: 02.03.2015
Сообщений: 6,509
|
||||||
| 28.11.2017, 01:30 | ||||||
1
|
||||||
|
19 / 10 / 1
Регистрация: 22.07.2015
Сообщений: 908
|
|||||||||||
| 28.11.2017, 05:53 [ТС] | |||||||||||
|
Marinero, увы, но ваш код никаких изменений в файл не внёс.
Добавлено через 17 минут Может ошибка в sed. Вот что он выводит
Собственно, вот содержимое всего файла Кликните здесь для просмотра всего текста
0
|
|||||||||||
|
Супер-модератор
|
|||||||
| 28.11.2017, 09:30 | |||||||
|
Кликните здесь для просмотра всего текста
0
|
|||||||
|
19 / 10 / 1
Регистрация: 22.07.2015
Сообщений: 908
|
|
| 28.11.2017, 10:02 [ТС] | |
|
volvo,
Не по теме: вы это пробовали на кастрированом андроивском sed из busybox?
0
|
|
|
Супер-модератор
|
|
| 28.11.2017, 10:12 | |
|
Нет, я это пробовал на sed из Debian-а. Про какой-то конкретный кастрированный sed в теме ничего не сказано (кстати, зря. Я бы и не пробовал, если бы знал, что это какой-то мутант, меня всякие недо... не интересуют обычно. Только в очень редких случаях)
0
|
|
|
19 / 10 / 1
Регистрация: 22.07.2015
Сообщений: 908
|
||
| 28.11.2017, 10:14 [ТС] | ||
|
volvo, я знал что будут ответы такого плана, поэтому и написал в первом посте
0
|
||
|
2796 / 2039 / 682
Регистрация: 02.03.2015
Сообщений: 6,509
|
|||||||||||
| 28.11.2017, 19:45 | |||||||||||
Сообщение было отмечено Marinero как решение
Решение
blackeangel, угадывать возможности кастрированного sed весьма сложно. Может поможет разнесение команд
1
|
|||||||||||
|
19 / 10 / 1
Регистрация: 22.07.2015
Сообщений: 908
|
|
| 28.11.2017, 19:47 [ТС] | |
|
Marinero, зачем угадывать? Разве кроме sed в этом деле нет никого?
0
|
|
|
2796 / 2039 / 682
Регистрация: 02.03.2015
Сообщений: 6,509
|
|
| 28.11.2017, 19:50 | |
|
Есть vim?
0
|
|
|
6691 / 2282 / 348
Регистрация: 10.12.2013
Сообщений: 7,894
|
|
| 28.11.2017, 19:52 | |
|
а какие ещё инструменты есть в кастрированном андрдвскм sed из busybox ?
( огласите весь список, пжлста ) Добавлено через 42 секунды о, практически хором спросили.
0
|
|
|
19 / 10 / 1
Регистрация: 22.07.2015
Сообщений: 908
|
||||||||||||||||
| 28.11.2017, 22:32 [ТС] | ||||||||||||||||
|
Marinero, есть, но насколько он порезан не знаю.
volodin661, Кликните здесь для просмотра всего текста
markw:/ # busybox BusyBox v1.27.2.YDS (2017-09-06 15:16:56 UTC) multi-call binary. BusyBox is copyrighted by many authors between 1998-2015. Licensed under GPLv2. See source distribution for detailed copyright notices. Usage: busybox [function [arguments]...] or: busybox --list[-full] or: busybox --install [-s] [DIR] or: function [arguments]... BusyBox is a multi-call binary that combines many common Unix utilities into a single executable. Most people will create a link to busybox for each function they wish to use and BusyBox will act like whatever it was invoked as. Currently defined functions: [, [[, acpid, add-shell, addgroup, adduser, adjtimex, ar, arp, arping, ash, awk, base64, basename, bash, bbconfig, beep, blkdiscard, blkid, blockdev, bootchartd, brctl, bunzip2, bzcat, bzip2, cal, cat, chat, chattr, chcon, chgrp, chmod, chown, chpasswd, chpst, chroot, chrt, chvt, cksum, clear, cmp, comm, conspy, cp, cpio, crond, crontab, cryptpw, cttyhack, cut, date, dc, dd, deallocvt, delgroup, deluser, depmod, devmem, df, dhcprelay, diff, dirname, dmesg, dnsd, dnsdomainname, dos2unix, dpkg, dpkg-deb, du, dumpkmap, dumpleases, echo, ed, egrep, eject, env, envdir, envuidgid, ether-wake, expand, expr, factor, fakeidentd, fallocate, false, fatattr, fbset, fbsplash, fdflush, fdformat, fdisk, fgconsole, fgrep, find, findfs, flash_eraseall, flash_lock, flash_unlock, flashcp, flock, fold, free, freeramdisk, fsck, fsck.minix, fsfreeze, fstrim, fsync, ftpd, ftpget, ftpput, fuser, getenforce, getopt, getsebool, getty, grep, groups, gunzip, gzip, halt, hd, hdparm, head, hexdump, hostid, hostname, httpd, hush, hwclock, i2cdetect, i2cdump, i2cget, i2cset, id, ifconfig, ifdown, ifenslave, ifplugd, ifup, inetd, init, inotifyd, insmod, install, ionice, iostat, ip, ipaddr, ipcalc, ipcrm, ipcs, iplink, ipneigh, iproute, iprule, iptunnel, kbd_mode, kill, killall, killall5, klogd, last, less, link, linux32, linux64, linuxrc, ln, load_policy, loadfont, loadkmap, logger, login, logname, logread, losetup, lpd, lpq, lpr, ls, lsattr, lsmod, lsof, lspci, lsscsi, lsusb, lunzip, lzcat, lzip, lzma, lzop, lzopcat, makedevs, makemime, man, matchpathcon, md5sum, mdev, mesg, microcom, mkdir, mkdosfs, mke2fs, mkfifo, mkfs.ext2, mkfs.minix, mkfs.reiser, mkfs.vfat, mknod, mkpasswd, mkswap, mktemp, modinfo, modprobe, more, mount, mountpoint, mpstat, msh, mt, mv, nameif, nanddump, nandwrite, nbd-client, nc, netstat, nice, nl, nmeter, nohup, nproc, nsenter, nslookup, ntpd, od, openvt, partprobe, passwd, paste, patch, pgrep, pidof, ping, ping6, pipe_progress, pivot_root, pkill, pmap, popmaildir, poweroff, powertop, printenv, printf, ps, pscan, pstree, pwd, pwdx, raidautorun, rdate, rdev, readahead, readlink, readprofile, realpath, reboot, reformime, remove-shell, renice, reset, resize, restorecon, rev, rfkill, rm, rmdir, rmmod, route, rpm, rpm2cpio, rtcwake, run-parts, runcon, runlevel, runsv, runsvdir, rx, script, scriptreplay, sed, selinuxenabled, sendmail, seq, sestatus, setarch, setconsole, setenforce, setfiles, setfont, setkeycodes, setlogcons, setpriv, setsebool, setserial, setsid, setuidgid, sh, sha1sum, sha256sum, sha3sum, sha512sum, showkey, shred, shuf, slattach, sleep, smemcap, softlimit, sort, split, ssl_client, start-stop-daemon, stat, strings, stty, su, sulogin, sum, sv, svc, svlogd, swapoff, swapon, switch_root, sync, sysctl, syslogd, tac, tail, tar, taskset, tcpsvd, tee, telnet, telnetd, test, tftp, tftpd, time, timeout, top, touch, tr, traceroute, traceroute6, true, truncate, tty, ttysize, tunctl, tune2fs, ubiattach, ubidetach, ubimkvol, ubirename, ubirmvol, ubirsvol, ubiupdatevol, udhcpc, udhcpc6, udhcpd, udpsvd, uevent, umount, uname, uncompress, unexpand, uniq, unix2dos, unlink, unlzma, unlzop, unshare, unxz, unzip, uptime, users, usleep, uudecode, uuencode, vconfig, vi, vlock, volname, w, wall, watch, watchdog, wc, wget, which, who, whoami, whois, xargs, xxd, xz, xzcat, yes, zcat, zcip Добавлено через 5 минут Marinero,
Marinero, классический вариант работает 100% . Спасибо. Добавлено через 52 минуты Что то все не вяжется. Вот есть такие строки Кликните здесь для просмотра всего текста
<?xml version="1.0" encoding="utf-8" ?> <MediaCodecs> <Decoders> <MediaCodec name="OMX.MTK.AUDIO.DECODER.MP3" type="audio/mpeg" > <Quirk name="decoder-lies-about-number-of-channels" /> <Quirk name="supports-multiple-frames-per-input-buffer" /> </MediaCodec> <MediaCodec name="OMX.google.opus.decoder" type="audio/opus"> <Limit name="channel-count" max="8" /> <Limit name="sample-rate" ranges="8000-96000" /> <Limit name="bitrate" range="1-10000000" /> </MediaCodec> <MediaCodec name="OMX.MTK.AUDIO.DECODER.ADPCM.MS" type="audio/x-adpcm-ms" /> <MediaCodec name="OMX.MTK.AUDIO.DECODER.ADPCM.DVI" type="audio/x-adpcm-dvi-ima" /> <MediaCodec name="OMX.MTK.AUDIO.DECODER.GSM" type="audio/gsm" /> <MediaCodec name="OMX.MTK.AUDIO.DECODER.RAW" type="audio/raw" /> <MediaCodec name="OMX.MTK.AUDIO.DECODER.G711.ALAW" type="audio/g711-alaw" > <Quirk name="decoder-lies-about-number-of-channels" /> </MediaCodec> <MediaCodec name="OMX.MTK.AUDIO.DECODER.G711.MLAW" type="audio/g711-mlaw" > <Quirk name="decoder-lies-about-number-of-channels" /> </MediaCodec> <MediaCodec name="OMX.MTK.AUDIO.DECODER.FLAC" type="audio/flac" /> <MediaCodec name="OMX.MTK.AUDIO.DECODER.WMA" type="audio/x-ms-wma" /> <MediaCodec name="OMX.MTK.AUDIO.DECODER.WMAPRO" type="audio/x-ms-wmapro" /> <MediaCodec name="OMX.MTK.AUDIO.DECODER.APE" type="audio/ape" > <Quirk name="decoder-lies-about-number-of-channels" /> <Quirk name="supports-multiple-frames-per-input-buffer" /> </MediaCodec> <MediaCodec name="OMX.MTK.AUDIO.DECODER.ALAC" type="audio/alac" /> <MediaCodec name="OMX.google.amrnb.decoder" type="audio/3gpp" /> <MediaCodec name="OMX.google.amrwb.decoder" type="audio/amr-wb" /> <MediaCodec name="OMX.google.aac.decoder" type="audio/mp4a-latm" /> <MediaCodec name="OMX.google.vorbis.decoder" type="audio/vorbis" /> <MediaCodec name="OMX.MTK.VIDEO.DECODER.MPEG2" type="video/mpeg2" > <Limit name="size" min="16x16" max="1920x1088" /> <Quirk name="requires-allocate-on-input-ports" /> <Quirk name="requires-allocate-on-output-ports" /> </MediaCodec> <MediaCodec name="OMX.MTK.VIDEO.DECODER.HEVC" type="video/hevc" > <Limit name="size" min="64x64" max="1280x720" /> <Quirk name="requires-allocate-on-input-ports" /> <Quirk name="requires-allocate-on-output-ports" /> <Feature name="adaptive-playback"/> </MediaCodec> <MediaCodec name="OMX.MTK.VIDEO.DECODER.MPEG4" type="video/mp4v-es" > <Limit name="size" min="16x16" max="1920x1088" /> <Quirk name="requires-allocate-on-input-ports" /> <Quirk name="requires-allocate-on-output-ports" /> <Feature name="adaptive-playback"/> </MediaCodec> <MediaCodec name="OMX.MTK.VIDEO.DECODER.H263" type="video/3gpp" > <Limit name="size" min="16x16" max="1920x1088" /> <Quirk name="requires-allocate-on-input-ports" /> <Quirk name="requires-allocate-on-output-ports" /> <Feature name="adaptive-playback"/> </MediaCodec> <MediaCodec name="OMX.MTK.VIDEO.DECODER.AVC" type="video/avc" > <Limit name="size" min="64x64" max="1920x1088" /> <Quirk name="wants-NAL-fragments" /> <Quirk name="requires-allocate-on-input-ports" /> <Quirk name="requires-allocate-on-output-ports" /> <Feature name="adaptive-playback"/> </MediaCodec> <MediaCodec name="OMX.MTK.VIDEO.DECODER.VPX" type="video/x-vnd.on2.vp8" > <Limit name="size" min="16x16" max="1280x720" /> <Quirk name="requires-allocate-on-input-ports" /> <Quirk name="requires-allocate-on-output-ports" /> <Feature name="adaptive-playback"/> </MediaCodec> <MediaCodec name="OMX.MTK.VIDEO.DECODER.VP9" type="video/x-vnd.on2.vp9" > <Limit name="size" min="16x16" max="1280x720" /> <Quirk name="requires-allocate-on-input-ports" /> <Quirk name="requires-allocate-on-output-ports" /> <Feature name="adaptive-playback"/> </MediaCodec> <MediaCodec name="OMX.MTK.VIDEO.DECODER.VC1" type="video/x-ms-wmv" > <Limit name="size" min="16x16" max="1920x1088" /> <Quirk name="requires-allocate-on-input-ports" /> <Quirk name="requires-allocate-on-output-ports" /> </MediaCodec> <MediaCodec name="OMX.MTK.VIDEO.DECODER.DIVX" type="video/divx" > <Limit name="size" min="16x16" max="1920x1088" /> <Quirk name="requires-allocate-on-input-ports" /> <Quirk name="requires-allocate-on-output-ports" /> </MediaCodec> <MediaCodec name="OMX.MTK.VIDEO.DECODER.DIVX3" type="video/divx3" > <Limit name="size" min="16x16" max="1920x1088" /> <Quirk name="requires-allocate-on-input-ports" /> <Quirk name="requires-allocate-on-output-ports" /> </MediaCodec> <MediaCodec name="OMX.MTK.VIDEO.DECODER.XVID" type="video/xvid" > <Limit name="size" min="16x16" max="1920x1088" /> <Quirk name="requires-allocate-on-input-ports" /> <Quirk name="requires-allocate-on-output-ports" /> </MediaCodec> <MediaCodec name="OMX.MTK.VIDEO.DECODER.S263" type="video/flv1" > <Limit name="size" min="16x16" max="1920x1088" /> <Quirk name="requires-allocate-on-input-ports" /> <Quirk name="requires-allocate-on-output-ports" /> </MediaCodec> <MediaCodec name="OMX.google.vp8.decoder" type="video/x-vnd.on2.vp8"> <Limit name="size" min="2x2" max="1280x720" /> <Limit name="alignment" value="2x2" /> <Limit name="block-size" value="16x16" /> <Limit name="blocks-per-second" range="1-1000000" /> <Limit name="bitrate" range="1-40000000" /> <Feature name="adaptive-playback" /> </MediaCodec> <MediaCodec name="OMX.google.h264.decoder" type="video/avc"> <Limit name="size" min="2x2" max="2048x2048" /> <Limit name="alignment" value="2x2" /> <Limit name="block-size" value="16x16" /> <Limit name="blocks-per-second" range="1-983040" /> <Limit name="bitrate" range="1-40000000" /> <Feature name="adaptive-playback" /> </MediaCodec> <MediaCodec name="OMX.dolby.ac3.decoder" > <Type name="audio/ac3" /> <Quirk name="needs-flush-before-disable" /> <Quirk name="requires-flush-complete-emulation" /> </MediaCodec> <MediaCodec name="OMX.dolby.ec3.decoder" > <Type name="audio/eac3" /> <Quirk name="needs-flush-before-disable" /> <Quirk name="requires-flush-complete-emulation" /> </MediaCodec> </Decoders> <Encoders> <MediaCodec name="OMX.MTK.VIDEO.ENCODER.MPEG4" type="video/mp4v-es" > <Limit name="size" min="64x64" max="1280x720" /> <Limit name="alignment" value="16x16" /> <Limit name="block-size" value="16x16" /> <Quirk name="requires-allocate-on-input-ports" /> <Quirk name="requires-allocate-on-output-ports" /> </MediaCodec> <MediaCodec name="OMX.MTK.VIDEO.ENCODER.H263" type="video/3gpp" > <Limit name="size" min="64x64" max="1280x720" /> <Limit name="alignment" value="16x16" /> <Limit name="block-size" value="16x16" /> <Quirk name="requires-allocate-on-input-ports" /> <Quirk name="requires-allocate-on-output-ports" /> </MediaCodec> <MediaCodec name="OMX.MTK.VIDEO.ENCODER.AVC" type="video/avc" > <Limit name="size" min="64x64" max="720x480" /> <Limit name="alignment" value="16x16" /> <Limit name="block-size" value="16x16" /> <Quirk name="requires-allocate-on-input-ports" /> <Quirk name="requires-allocate-on-output-ports" /> </MediaCodec> <MediaCodec name="OMX.MTK.AUDIO.ENCODER.VORBIS" type="audio/vorbis" /> <MediaCodec name="OMX.MTK.AUDIO.ENCODER.ADPCM.MS" type="audio/x-adpcm-ms" /> <MediaCodec name="OMX.MTK.AUDIO.ENCODER.ADPCM.DVI" type="audio/x-adpcm-dvi-ima" /> <MediaCodec name="OMX.google.aac.encoder" type="audio/mp4a-latm" /> <MediaCodec name="OMX.google.amrnb.encoder" type="audio/3gpp" /> <MediaCodec name="OMX.google.amrwb.encoder" type="audio/amr-wb" /> <MediaCodec name="OMX.google.flac.encoder" type="audio/flac" /> <MediaCodec name="OMX.google.vp8.encoder" type="video/x-vnd.on2.vp8"> <Limit name="size" min="2x2" max="1280x720" /> <Limit name="alignment" value="2x2" /> <Limit name="bitrate" range="1-40000000" /> <Feature name="bitrate-modes" value="VBR,CBR" /> </MediaCodec> </Encoders> </MediaCodecs> Если использовать такой код
Кликните здесь для просмотра всего текста
Меня почти устраивает. Кроме того что нет последних строк. В общем задача изменилась слегка. Надо все так же, но сделать для строк содержащих audio и без </MediaCodec>. Что править? Куда рыть? Да и ещё, в тексте возможны пустые строки либо комментарии.
0
|
||||||||||||||||
|
2796 / 2039 / 682
Регистрация: 02.03.2015
Сообщений: 6,509
|
||||||||
| 30.11.2017, 02:23 | ||||||||
0
|
||||||||
|
19 / 10 / 1
Регистрация: 22.07.2015
Сообщений: 908
|
||||||
| 30.11.2017, 06:01 [ТС] | ||||||
|
Marinero, надо удалить все что между <MediaCodec.*audio.* И </MediaCodec> включая строку </MediaCodec>. Но бывают такие строки
0
|
||||||
|
1135 / 391 / 86
Регистрация: 30.08.2017
Сообщений: 2,418
|
|
| 30.11.2017, 06:06 | |
|
Может стоит обратить внимание на python? Там было чего-то для работы с xml
0
|
|
|
19 / 10 / 1
Регистрация: 22.07.2015
Сообщений: 908
|
|
| 30.11.2017, 06:53 [ТС] | |
|
_sg2,я бы с радостью, если бы был не ограничен лишь busybox.
0
|
|
|
2796 / 2039 / 682
Регистрация: 02.03.2015
Сообщений: 6,509
|
||||||
| 30.11.2017, 09:43 | ||||||
|
Поддержу _sg2 - это не дело, есть куча специализированных инструментов для работы с xml/html
Если чисто из спортивного интереса, то проще модифицировать классический вариант
0
|
||||||
|
19 / 10 / 1
Регистрация: 22.07.2015
Сообщений: 908
|
||
| 01.12.2017, 23:03 [ТС] | ||
Marinero, по поводу кода - без изменений файл остался.
0
|
||
|
2796 / 2039 / 682
Регистрация: 02.03.2015
Сообщений: 6,509
|
|
| 02.12.2017, 11:09 | |
|
blackeangel, проверьте правильность ввода - у меня работает.
0
|
|
|
19 / 10 / 1
Регистрация: 22.07.2015
Сообщений: 908
|
|
| 02.12.2017, 11:24 [ТС] | |
|
Marinero, скопировал с форума в файл, и запустил его из терминала от рута. Готово. То есть ошибок ввода никаких. В терминале никакого вывода нет. Увы. Значит этот вариант не пойдет.
0
|
|
| 02.12.2017, 11:24 | |
|
Помогаю со студенческими работами здесь
20
Строки. Множества. Удалить в строке все, что заключено между фигурными скобками и их самих
Удалить ярлык без удаления его приложения Работа со строками. Удалить символы между скобками () Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
|
SDL3 для Web (WebAssembly): Сборка SDL3 и Box2D из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
|
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога
Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
|
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование
. \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json>
Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом.
# Check if. . .
|
|
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так:
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347
Основана на STM32F303RBT6.
На борту пять. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила»
«Время-Деньги»
«Деньги -Пуля»
|