- 1 名前:名無しさん@お腹いっぱい。 [04/05/28 16:56.net]
- sedスレッド
- 574 名前:名無しさん@お腹いっぱい。 mailto:sage [2019/07/02(火) 23:46:07.78 .net]
- マジかよ
gnu sedなんてそれこそ./configureしてmakeだけじゃん --program-prefix=gくらいつけといた方がいいだろけどさ
- 575 名前:名無しさん@お腹いっぱい。 mailto:sage [2019/07/02(火) 23:47:55.81 .net]
- あー、なんかつい誘導されちゃった感じ...
- 576 名前:名無しさん@お腹いっぱい。 mailto:sage [2019/07/03(水) 01:18:23.32 .net]
- >>574
560です。エラー、コピペしていいですか?長いんですけど。。。
- 577 名前:名無しさん@お腹いっぱい。 mailto:sage [2019/07/03(水) 03:40:41.85 .net]
- gnu sed もインストール出来ました。
bash_profileのパスを最小限にしたらエラーがなくなったみたい?
- 578 名前:名無しさん@お腹いっぱい。 mailto:sage [2019/07/03(水) 03:41:36.40 .net]
- >>576質問は取り消します。有難うございました。
- 579 名前:30GBでも大丈夫 thanks sed mailto:sage [2019/07/06(土) 21:39:28.25 .net]
- sed -n '10509757p' primes
2147483563 2147483579 2147483587 2147483629 2147483647-2147483648-2147483647-2147483646-2147483645-2147483644 OFやらかした最終行 ... -1800706952-1800706951-1800706950-1800706949-1800706948-1800706947-1800706946-1800706945-1800706944-1800706943 sed -ie '10509758,$d' primes
- 580 名前:名無しさん@お腹いっぱい。 mailto:sage [2021/09/08(水) 17:50:49.92 .net]
- sedのホールドスペースは、その内容を削除するにはどうすれば?
とりあえずs/.//g;xでできたけど、もっと直接的なやりかたはないんかなー、と。
- 581 名前:名無しさん@お腹いっぱい。 mailto:sage [2021/09/08(水) 17:54:36.56 .net]
- sedスクリプトファイルでよく使われる拡張子はあります?
ほとんどコマンドラインに-eで書ききるものでしょうが、あえてファイルにするとしたらやっぱりsed?
- 582 名前:名無しさん@お腹いっぱい。 mailto:sage [2021/12/25(土) 09:31:39.87 .net]
- >>581
別にこだわる必要はないけど 各種sed処理系付属のexamplesとか覗くとみんな.sedなので、あえて正書法にこだわるならやはり.sedかと 実装を隠したコマンドとして纏めたい、常に特定のオプション(-i等)で起動したい、主コードとsedの拡張チェック等を分離したいならenvを使うとよい sedによってはオプションを重ねられたり重ねられなかったりするので #! /usr/bin/env -S sed -f (-i -n -e 'check')
- 583 名前:名無しさん@お腹いっぱい。 mailto:sage [2021/12/25(土) 09:35:07.03 .net]
- ところでgnu sedの付録のdc.sedってのやばいなこれ
興味深いけど誰か注釈付けてくれたりしてないのか
- 584 名前:名無しさん@お腹いっぱい。 [2023/02/05(日) 22:38:55.04 .net]
- onigsed がダウンロードできなくて困ってます。
- 585 名前:名無しさん@お腹いっぱい。 mailto:sage [2023/09/30(土) 14:56:35.67 .net]
- (@д@)/?.うそ~!””
- 586 名前:名無しさん@お腹いっぱい。 [2024/03/27(水) 19:48:02.41 .net]
- たどり着けない境地だ
- 587 名前:名無しさん@お腹いっぱい。 [2024/03/27(水) 19:55:02.09 .net]
- それらが引退した人も逮捕されてるの見つかって捕まって誰かに相手されないもんね
ヒスンは凄く特殊な銃を使って
- 588 名前:名無しさん@お腹いっぱい。 [2024/03/27(水) 21:38:04.20 .net]
- 4232
じり下げはやめて良い部屋は空いてるんだったら 胃がびっくりしておかしくなる 家庭崩壊する それが政治とどう関係あるのが信じられなくなったから焦った
- 589 名前:名無しさん@お腹いっぱい。 [2024/04/01(月) 17:36:13.18 .net]
- awkについて語るスレ $3
https://mevius.5ch.net/test/read.cgi/tech/1600054668/
- 590 名前:名無しさん@お腹いっぱい。 mailto:sage [2024/05/30(木) 11:15:41.15 .net]
- pcre使えるsedある?
- 591 名前:名無しさん@お腹いっぱい。 mailto:sage [2024/05/30(木) 19:55:34.18 .net]
- https://github.com/christopherfujino/sed-pcre
はイケてるんかな
- 592 名前:名無しさん@お腹いっぱい。 [2024/08/13(火) 08:10:10.49 .net]
- sed '/削除したい行/d'
で「削除したい行」は削除されるが、「削除したい行」の1行前から2行後迄削除したい場合は、どう書くの?
- 593 名前:名無しさん@お腹いっぱい。 mailto:sage [2024/08/13(火) 09:58:16.91 .net]
- grepだと複数行はAオプションがあるけど、sedは複数行は無理なんじゃないかな
- 594 名前:名無しさん@お腹いっぱい。 [2024/08/13(火) 10:50:05.64 .net]
- >>593
質問の前提を変更するっち。以下、 sed '/削除したい行/,+2d' で、GNU sedでは「削除したい行」から2行後まで削除されるが、
- 595 名前:名無しさん@お腹いっぱい。 mailto:sage [2024/08/13(火) 22:27:16.64 .net]
- sed -n '{ /削除したい行/{ g; s/\n[^\n]*$//; h; n; n; bc }; H; s/.*//; :c }; ${ g; s/\n//; p }'
黒魔術じみたコードになっちゃった…
- 596 名前:名無しさん@お腹いっぱい。 mailto:sage [2024/08/13(火) 23:44:44.87 .net]
- 複数行、出来るんだ
知らなかった
- 597 名前:名無しさん@お腹いっぱい。 [2024/08/14(水) 05:52:06.53 .net]
- その手のためだけに,plan9のsamを使ってた.
- 598 名前:593 [2024/08/14(水) 19:02:06.33 .net]
- >>595
ありがとう。 # でも全然解らん...
- 599 名前:名無しさん@お腹いっぱい。 mailto:sage [2024/08/14(水) 20:18:50.75 .net]
- 仕組みを学ぶのは後で、やりたいことが実現できるならいいでしょ
sudo \rm -rf / とかを躊躇無く実行しちゃうみたいなのは危険だけど
- 600 名前:名無しさん@お腹いっぱい。 mailto:sage [2024/08/15(木) 01:15:03.31 .net]
- "削除したい行"行が連続する場合
前1行がない場合 後2行がない場合
- 601 名前:593 [2024/08/15(木) 08:30:40.41 .net]
- >>600
仕様を明確化せよという意味だべか。 「削除したい行」の1行前から2行後迄の削除対象「範囲」は、1ファイルのどこかに必ず1箇所存在する。なのでその3条件は無い。
- 602 名前:名無しさん@お腹いっぱい。 mailto:sage [2024/08/15(木) 18:45:42.03 .net]
- >>595
seq 10 | sed -n '{ /^9$/{ g; s/\n[^\n]*$//; h; n; n; bc }; H; s/.*//; :c }; ${ g; s/\n//; p }' 何も出力されない 最終行に到達してからさらに n コマンドを使うと、以降はアドレス $ に一致しなくなるみたい n を $!n にするのが手っ取り早い あとこれ s/.*// は要らないと思う 外側の { } も seq 10 | sed -n '/^9$/{ g; s/\n[^\n]*$//; h; $!n; $!n; bc }; H; :c; ${ g; s/\n//; p }'
- 603 名前:名無しさん@お腹いっぱい。 mailto:sage [2024/08/15(木) 18:59:31.57 .net]
- sed '$!N;/削除したい行/,+2d;P;D;'
- 604 名前:名無しさん@お腹いっぱい。 mailto:sage [2024/08/15(木) 22:15:36.30 .net]
- sed 'H;1h;$!d;x; s/^\([^\n]*\n\)\{0,1\}削除したい行\(\n[^\n]*\)\{0,2\}\n\?//m;'
- 605 名前:名無しさん@お腹いっぱい。 [2025/04/27(日) 17:41:15.94 .net]
- I sed.
- 606 名前:名無しさん@お腹いっぱい。 mailto:sage [2025/10/17(金) 18:28:31.06 .net]
- それはsaidや
|

|