1 名前:名無しさん@お腹いっぱい。 [04/05/28 16:56.net] sedスレッド
426 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/04/08(日) 06:20:31.95 .net] >>425 /start/,/end/{/end/!p}
427 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/04/08(日) 08:34:53.99 .net] >>426 いや、それは知ってるよ。 そういうことせずに直接○○の行の手前まで指定はできないのか聞いてるんだが
428 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/04/08(日) 16:24:07.33 .net] unkoの次の行から、ってのは難しいのかな・・・
429 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/04/08(日) 16:42:05.75 .net] >>428 startを含まず、endを含む場合 sed -n '1,/start/b; 1,/end/p'
430 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/04/09(月) 11:14:30.69 .net] みんな1行野郎なの? スクリプトファイルは書かないの?
431 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/04/10(火) 11:14:22.67 .net] >>430 スクリプト書くほどならperlで書いちゃう
432 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/04/11(水) 03:53:49.91 .net] perlは英語のマニュアルが読めなくて挫折した。あんときperlがんばっとけばよかったorz
433 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/04/11(水) 08:09:32.29 .net] 書くよ
434 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/04/13(金) 05:52:55.50 .net] DTPでテキストの整形するとき、いっぱい痴漢(←なぜか第一候補)するよ。
435 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/04/13(金) 18:41:21.71 .net] >>432 俺はPerlは書籍で覚えたな、ラクダとあと何かUnixツールとして使うための本
436 名前:名無しさん@お腹いっぱい。 [2012/08/06(月) 23:45:58.92 .net] 教えてください! テキストファイルの最後にある空行を削除するにはどうすればいいですか? $ sed -n ' 105,$p' Ga.inp search.LowerE -3.000 # default=-3.000 (Hartree) search.UpperE 20.000 # default=20.000 (Hartree) num.of.partition 1200 # default=300 matching.point.ratio 0.67 # default=0.67 の様に、最後に無駄な空行のあるファイルがたくさんあって、一括削除したいのです。 ただし、途中にある改行は、ファイルの見やすさのために残しておきたいのです。 ed で言えば $;?^.?;+,$d で出来ると思うのですが、sed では';'や'+'が使えず、どうしてよいやら・・・
437 名前:名無しさん@お腹いっぱい。 [2012/08/07(火) 00:42:37.55 .net] パターンスペースが 空行だったらホールドスペースに追加 空行でなかったらホールドスペースを出力後にパターンスペース出力 最後の連続空行はホールドスペースに収まったままで終わる。 とか考えてみたがあってるだろうか。
438 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/08/07(火) 03:04:20.52 .net] Nコマンドを使っていて必要な最期の行を全部すっとばしたことが、私にもありました
439 名前:名無しさん@お腹いっぱい。 [2012/08/07(火) 22:00:53.40 .net] >>437 多分やりたいのはそれだと思います。 具体的に同書けばいいのでしょう?
440 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/08/08(水) 02:01:32.99 .net] もうawkかなにかで済ましてるだろうけど練習 437とは違うやり方になった sed -n -e ' :loop /^\n*$/{ N b loop } p '
441 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/08/08(水) 21:26:58.20 .net] >>440 ありがとうございます! うまくいきました。
442 名前:名無しさん@お腹いっぱい。 [2012/08/17(金) 16:05:21.04 .net] gsedですが、 ブラケット開きがあって、ブラケット閉じ以外のものが1つ以上あって、ブラケット閉じがある場合、 で、これどこがおかしいのでしょうか? ★☆が現れてくれないんですけど。 s/\[\([^\]][^\]]*\)]/[★\1☆]/g
443 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/08/17(金) 16:29:03.18 .net] >>442 バックスラッシュが余計 sed 's/\[\([^]][^]]*\)]/[★\1☆]/g'
444 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/08/17(金) 16:43:13.83 .net] ありがとうございます。 つまり、[ と ] の間にあるものはどんなものでも 「これは文字です」と宣言しなくてもいい(\が要らない)ということですか。 やってみます。ありがとうございました。
445 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/08/17(金) 16:45:03.71 .net] >>444 そうなんだけど、] の場合は、[^ の直後にある場合のみ 普通の文字の ] とみなすという仕様。( [ の直後でも同様)
446 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/08/17(金) 18:35:40.56 .net] テキスト [aaa], [bbb] <あああ>の(アアア)と<いいい>の(イイイ) 欲しい結果 ★aaa☆, ★bbb☆ ★あああ☆の★アアア☆と★いいい☆の★イイイ☆ s/[<[(]\([^<>[]()][^<>[]()]*\)[>])]/★\1☆/g 予想はしたけど、まるで反応してくれません。 半角の約物3種類は欲張ったかなあ、と1つずつやってみているところです。
447 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/08/17(金) 18:37:54.56 .net] >>446 >>445 に書いてあること読めよ。 [^ の直後に ] を置かないと、普通の文字としては認識されないんだよ。 [^....] の中の .... の順番を変えろということ。
448 名前:名無しさん@お腹いっぱい。 [2012/08/17(金) 18:41:47.66 .net] >>446 s/[[<(]\([^]<>()][^]<>()]*\)[]>)]/★\1☆/g
449 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/08/18(土) 03:20:55.76 .net] >>447-448 ああ、すみません。言葉が足りませんでした。読んだ上でわざと変えてみたのです。
450 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/08/19(日) 00:04:02.62 .net] え?
451 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/08/20(月) 16:08:01.31 .net] ごめんなさい。>>446 は[]の中の[]に全部\を付けたつもりでした(このミスが大元ですね) エスケープすればどの位置にあっても文字とするというsedを使っていたのと、 最長一致の正規表現も使っていたので混乱してしまいました。 「直後」を何度も言われていたのに、「直後『だけ』」に思いが至りませんでした。
452 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/10/25(木) 06:00:58.34 .net] gsed で、置換コマンドの s を間違えて a と入力したスクリプトを実行したら、 一行ごとにその行が挿入されていて笑ってしまった。 a コマンドなんて知らなかったわ。
453 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/10/25(木) 06:04:10.00 .net] 笑えんなぁ。
454 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/10/25(木) 06:09:46.09 .net] 笑って許して♪
455 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/10/25(木) 06:45:25.34 .net] gsed って置換するときにタグの数が合ってなくてもエラーが出ないのね。
456 名前:名無しさん@お腹いっぱい。 [2012/10/25(木) 23:53:29.32 .net] aなんて、edの基本じゃん!
457 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/10/27(土) 12:38:13.67 .net] マニュアルでも最初のほうに来ちゃうしね
458 名前:名無しさん@お腹いっぱい。 [2012/11/05(月) 10:24:08.04 .net] 質問があります テキストファイルaaaの中身 <hoge> abc </hoge> <hoge> def </hoge> これを <hoge> def </hoge> のようにabcのタグだけ削除したい sed -i "/^<hoge>\n abc\n<\/hoge>/d" aaa これでは削除できませんでした。 改行を含む文字列を削除する場合どうしたらいいでしょうか?
459 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/05(月) 10:26:48.87 .net] sedでやるのは無理があるんじゃないか。
460 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/05(月) 12:39:56.92 .net] >>459 いや、なせば成る
461 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/05(月) 13:24:25.09 .net] cat aaa | sed -e ':loop; N; N; !b loop; s/^<hoge>\n abc\n<\/hoge>//' これで良いのかな?
462 名前:名無しさん@お腹いっぱい。 [2012/11/05(月) 14:31:53.41 .net] >>459-461 ありがとうございます しかし削除できませんでした ちなみにsedじゃなくて何でやったほうがいいでしょうか?
463 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/05(月) 14:34:20.66 .net] Perl でも Ruby でも何でもいいよ。
464 名前:名無しさん@お腹いっぱい。 [2012/11/05(月) 14:56:37.97 .net] >>463 はい。ありがとうございます。できればシェルスクリプトで書きたいので PerlでもRubyでも何でもいいとは思いますがそれ以外でいいコマンドはありませんでしょうか?
465 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/05(月) 15:19:40.83 .net] grep -n abc して、出てきた数字でsedスクリプト作っちゃうとか。
466 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/05(月) 15:53:27.99 .net] >>464 シェルスクリプトから呼び出せば良いんじゃないの? sedだって所詮は外部コマンドだし。
467 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/05(月) 21:31:52.30 .net] >>482 sed -n -f hoge.sed <aaa hoge.sed: /<hoge>/b hoge p b end :hoge N N /<hoge>\n abc\n<\/hoge>/!p :end
468 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/06(火) 04:00:03.51 .net] >>458 aaaがXMLならXMLパーサ(を使える言語)を使った方がいいと思う /<hoge>/!b :loop $b last /<\/hoge>/!{ N b loop } :last s/<hoge>[ \n\t]*abc[ \n\t]*\(<\/hoge>\)*//g
469 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/20(火) 09:09:15.11 .net] すみません。教えて下さい。 テキストの最終行のあとに空白行を1行入れる、というのはどう書くのでしょうか。 iコマンドでは最終行の前に空白行ができてしまいます。
470 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/20(火) 09:23:56.98 .net] sed -e '$a\ hoge '
471 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/20(火) 09:30:53.76 .net] ありがとう。助かりました。
472 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/22(木) 01:22:12.85 .net] 最終行の後なら $ cat >> tmp $ で十分であるようにも思うけどなぁ
473 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/22(木) 03:29:10.92 .net] ああ、なるほど。いつか思い出して使うこともあるでしょう。ありがとう。
474 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/22(木) 07:19:23.18 .net] >>472 1行追加ならechoの方が楽でね?
475 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/11/22(木) 11:59:50.11 .net] そうなんだけど、sedファイルの中に書き込みたかったんですよ。でも、ありがと
476 名前:名無しさん@お腹いっぱい。 mailto:sage [2013/01/04(金) 10:51:16.73 .net] optimized sed www.commandlinefu.com/commands/view/11707/optimized-sed 巨大ファイル対象の場合は sed '/foo/ s/foo/foobar/g' <filename> が sed 's/foo/foobar/g' <filename> よりも効率がよいとの事ですが、どういう原理でそうなるんでしょうか
477 名前:名無しさん@お腹いっぱい。 mailto:sage [2013/01/04(金) 12:52:49.06 .net] "foo"の在る行だけを対象にするから? どのみち見つけに行くんだから同じじゃん?と想ったり想わなかったり
478 名前:名無しさん@お腹いっぱい。 mailto:sage [2013/01/04(金) 12:55:13.46 .net] >>476 100万行のテキストファイル、GNU版のsedで試してみたけど どっちも変わらなかったぞ
479 名前:名無しさん@お腹いっぱい。 mailto:sage [2013/01/05(土) 01:12:15.15 .net] つまり、都市伝説って事か どのsedかによっても違うんだろう
480 名前:名無しさん@お腹いっぱい。 mailto:sage [2013/01/05(土) 09:49:03.44 .net] 対象になる行の割合にもよるんじゃないの?
481 名前:478 mailto:sage [2013/01/05(土) 10:26:37.21 .net] 1億行、954MBのファイルでやってみた $ seq -w 100000000 > large.txt $ sed --version | head -1 sed (GNU sed) 4.2.2 $ grep '111' large.txt | wc -l 549739 $ for i in {1..3}; do time sed 's/111/999/g' large.txt > /dev/null; done sed 's/111/999/g' large.txt > /dev/null 28.68s user 0.77s system 80% cpu 36.731 total sed 's/111/999/g' large.txt > /dev/null 28.75s user 0.68s system 82% cpu 35.666 total sed 's/111/999/g' large.txt > /dev/null 27.99s user 0.61s system 81% cpu 35.067 total $ for i in {1..3}; do time sed '/111/ s/111/999/g' large.txt > /dev/null; done sed '/111/ s/111/999/g' large.txt > /dev/null 27.68s user 0.63s system 82% cpu 34.418 total sed '/111/ s/111/999/g' large.txt > /dev/null 27.96s user 0.72s system 57% cpu 49.912 total sed '/111/ s/111/999/g' large.txt > /dev/null 28.84s user 0.71s system 81% cpu 36.287 total
482 名前:名無しさん@お腹いっぱい。 mailto:sage [2013/04/08(月) 00:25:48.59 .net] >type diff diff is /usr/bin/diff > type diff | sed 's,[()],,g;s,^[^/][^/]*,,;q' /usr/bin/diff s,[()],,g;s,^[^/][^/]*,,;q' ってどう解釈すれば良いんですか?
483 名前:名無しさん@お腹いっぱい。 mailto:sage [2013/04/08(月) 05:56:57.86 .net] 人それぞれ で良いんじゃない
484 名前:名無しさん@お腹いっぱい。 mailto:sage [2013/05/21(火) 06:44:35.71 .net] Macでgsedを使っています。やりたいこと ★のある行と☆のある行の間にある行のうち、ひらかなを含む行の行頭に@を付ける。 (ひらかなが1文字でも入っていれば良い) /★/,/☆/{ /[あ-ん]/s/^/@/ } 無視されてしまうんです。助けてください。
485 名前:484 mailto:sage [2013/05/21(火) 08:34:08.57 .net] [あ-ん]がいけなかったみたいです。[あいうえお(中略)ん、。]でできました。
486 名前:名無しさん@お腹いっぱい。 mailto:sage [2013/05/21(火) 13:23:01.78 .net] あ-ん♪
487 名前:名無しさん@お腹いっぱい。 mailto:sage [2013/05/21(火) 16:08:58.36 .net] >>484 ぽーつ使ってるならssed入れてpcre環境にすれば\p{Hiragana}とか できるんじゃね
488 名前:名無しさん@お腹いっぱい。 mailto:sage [2013/05/22(水) 03:36:42.23 .net] ごめんワカンナイ
489 名前:名無しさん@お腹いっぱい。 mailto:sage [2013/05/22(水) 16:53:09.99 .net] ssedって次期GNU sedのこと。 GNUのページでもこの拡張には依存するなって書いてる。 ただ、macでBSD系のsedじゃなくGNU sed使ってるんなら port依存って意味ではあんまり変わんないんじゃない?
490 名前:名無しさん@お腹いっぱい。 mailto:sage [2014/03/04(火) 03:45:38.92 .net] >>334 横から&亀だが sed '/pattern/ { '"`sed 's/^/i\\\\\n/' <file`"' }'
491 名前:名無しさん@お腹いっぱい。 mailto:sage [2014/06/28(土) 14:33:09.63 .net] >>491 UNIX板で答えない方が良いのかもしれませんが、適当なスレが無さそうなので windows のコマンドプロンプトで実行しているとして答えます。 cmd.exe の仕様が原因と思われる sed -e "s/^/ "^""/" hoge.txt > hoge2.txt
492 名前:名無しさん@お腹いっぱい。 mailto:sage [2014/06/28(土) 14:56:57.91 .net] sedを使用する際の注意事項があります。 コンピュータのCPUが何ビットであるか調ベておく事が大切です。 32ビットCPUを搭載したコンピュータには、 32ビット用のsedをインストールすること。 64ビットCPUを搭載したコンピュータには、 64ビット用のsedをインストールすること。 これを間違えれば正常にsedが動作しません。
493 名前:名無しさん@お腹いっぱい。 mailto:sage [2014/08/20(水) 00:07:25.20 .net] sedの使い方がわからず、試行錯誤しているのですが、うまくいきません。 行の先頭に特定の文字列(たとえば"abc")があったらその行を丸ごと"xxxxxxxxxxx"に置換するにはどうすれば良いでしょうか。 例: abc123456 が xxxxxxxxxxx に変換さえるイメージです。
494 名前:名無しさん@お腹いっぱい。 mailto:sage [2014/08/20(水) 01:37:59.80 .net] >>493 sed -n /^abc/p sed s/^abc.*$/xxxxxxxxxxx/
495 名前:名無しさん@お腹いっぱい。 [2014/08/20(水) 01:39:49.69 .net] パイプで使うバージョンを書く |sed 's/^abc.*/xxxxxxxxxxx/'
496 名前:名無しさん@お腹いっぱい。 mailto:sage [2014/08/20(水) 02:29:51.22 .net] sed '/^abc/cxxxxxxxxxxx'
497 名前:名無しさん@お腹いっぱい。 mailto:sage [2014/08/20(水) 03:06:02.58 .net] abc -> xxx abc123 -> xxxxxx abc12345 -> xxxxxxxx をsedでやるならどう書くんだろ
498 名前:名無しさん@お腹いっぱい。 mailto:sage [2014/08/20(水) 06:22:02.63 .net] >>497 s/./x/g
499 名前:名無しさん@お腹いっぱい。 mailto:sage [2014/08/20(水) 10:13:13.33 .net] >>493 sed '/^abc/s/./x/g' かな?
500 名前:名無しさん@お腹いっぱい。 mailto:sage [2014/09/17(水) 02:37:37.33 .net] パスワードのゼロ埋め(ゼロパディング)と見た。
501 名前:名無しさん@お腹いっぱい。 [2014/10/21(火) 08:56:25.00 .net] バックスラッシュって読みやすいか?日本語だと使い道無いし。 プログラミングで正規表現書いてると、 s/\dhoge\sfuga\s/hoge/ ↑似たような記号ばっかりで読みづらいw s/¥dhoge¥sfuga¥s/hoge/ ↑こっちのほうが読みやすい
502 名前:名無しさん@お腹いっぱい。 mailto:sage [2014/10/21(火) 10:00:39.43 .net] 使い道ある記号だったらエスケープシーケンスにも 円記号ねじ込むにも適さなかっただろうよ
503 名前:名無しさん@お腹いっぱい。 mailto:sage [2014/10/21(火) 11:48:25.80 .net] 最近可愛く見えてきた。意味を持たない組み合わせに腹を立てたり。
504 名前:名無しさん@お腹いっぱい。 mailto:sage [2014/10/21(火) 13:00:32.47 .net] スラッシュとバックスラッシュが紛らわしいんならスラッシュ以外の 文字を区切りに使えばいいんでないの?
505 名前:名無しさん@お腹いっぱい。 mailto:sage [2014/10/21(火) 13:05:36.87 .net] 区切りを変更できるのはsコマンドとかの時だけ
506 名前:名無しさん@お腹いっぱい。 [2014/11/06(木) 07:19:05.88 .net] 1,/hoge/ のようにaddressに正規表現を使う時のスラッシュを 他の記号に変えることはできますか? s@@https://@ のようなことをしたいのです
507 名前:名無しさん@お腹いっぱい。 mailto:sage [2014/11/06(木) 08:27:36.11 .net] >>505 にあるようにできない。
508 名前:名無しさん@お腹いっぱい。 mailto:sage [2014/11/06(木) 08:42:54.81 .net] できる実装もあるかもしれない
509 名前:名無しさん@お腹いっぱい。 mailto:sage [2014/11/06(木) 09:21:40.14 .net] コピペ改変にかまうな
510 名前:名無しさん@お腹いっぱい。 [2014/12/23(火) 16:27:26.38 .net] 他人が書いたコードで、例えば文字列が、 11 AAA [BBB] CCC/DDD.txt EEE FFF-01 だった場合に、ここから[]内の文字(BBB) を抜き出すために、 sed -e 's/\[//g' -e 's/\]//g' | awk '{ print $3 }' というスクリプトで BBB を取得しています。 このスクリプトを変更して、DDD を取得したいのですが、 どう書けば良いのでしょうか?
511 名前:名無しさん@お腹いっぱい。 mailto:sage [2014/12/23(火) 19:23:47.26 .net] s,.*/,,; s,\.txt.*,,
512 名前:名無しさん@お腹いっぱい。 mailto:sage [2014/12/24(水) 15:41:51.14 .net] ありがとう
513 名前:名無しさん@お腹いっぱい。 mailto:sage [2014/12/28(日) 06:55:35.52 .net] >>506 1,\@hoge@ linuxで確認済み 検索でここにたどり着いた人の為と、何処のコピペか検索してもそれらしいものが出なかったので、貼っておきます POSIX sed pubs.opengroup.org/onlinepubs/9699919799/utilities/sed.html In a context address, the construction "\cBREc", where c is any character other than <backslash> or <newline>, shall be identical to "/BRE/". If the character designated by c appears following a <backslash>, then it shall be considered to be that literal character, which shall not terminate the BRE. For example, in the context address "\xabc\xdefx", the second x stands for itself, so that the BRE is "abcxdef". BSD On-line Manual of "sed" www.jp.freebsd.org/cgi/mroff.cgi?subdir=man&lc=1&cmd=&man=sed&dir=jpman-5.4.0%2Fman§=0 1. コンテキストアドレスにおいて、バックスラッシュ (``\'') と改行以外の 文字を正規表現の区切りとして用いることできます。 区切り文字の直前に バックスラッシュを置くことで、区切り文字をリテラルに解釈させることが できます。 たとえば、コンテキストアドレス \xabc\xdefx において、区切 り文字は ``x'' で、2つめの ``x'' は ``x'' という文字を表します。 よっ て、正規表現は ``abcxdef'' と解釈されます。 LINUX Man page of SED linuxjm.sourceforge.jp/html/GNU_sed/man1/sed.1.html /regexp/ 正規表現 regexp にマッチした行にマッチする。 \cregexpc 正規表現 regexp にマッチした行にマッチする。c には任意の文字を指定できる。
514 名前:名無しさん@お腹いっぱい。 mailto:sage [2014/12/28(日) 17:04:08.20 .net] おおお、グレート義太夫
515 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/02/10(水) 23:22:09.08 .net] どうにも理解が出来ず教えて欲しいのですが sed.sourceforge.net/sed1line.txt から # print paragraph if it contains AAA (blank lines separate paragraphs) sed -e '/./{H;$!d;}' -e 'x;/AAA/!d;' これがどうにもわかりません。 H;$!d;の$!dが何故必要なのか? 動作の流れを教えて頂けないでしょうか?
516 名前:516 [2016/02/21(日) 00:09:27.85 .net] age
517 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/02/21(日) 01:34:16.62 .net] タダで教えろって?
518 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/02/21(日) 10:27:51.16 .net] dがあるのは段落の区切りまで何も出力させないため ファイル末尾も段落の区切りだから$!が要る ファイル末尾に必ず空行があるなら$!は要らない dでそのサイクルが終了することは知ってますね?
519 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/02/21(日) 10:54:53.96 .net] 10日も呆けーと待ってたことに驚き
520 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/02/21(日) 13:02:47.07 .net] でも教えてもらえたじゃないかw
521 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/02/21(日) 14:02:51.01 .net] 自分で試せば小一時間で気付くのに、と思う
522 名前:516 mailto:sage [2016/02/21(日) 16:55:28.79 .net] >>518 有り難うございます。助かりました。 !dをpの様に認識してしまっていて次のサイクルに移行させる イメージがなく、$!dを最終行を表示させるとしか思ってなくて 色々試してもどうにも腑に落ちないもので質問させて頂きました。
523 名前:名無しさん@お腹いっぱい。 [2016/04/28(木) 22:19:31.31 .net] sedで桁そろえってどうしたらいいですかる 具体的にはls -l で出てきた結果のうち、ファイル名を最初に左揃え、ファイルサイズを右揃えで出力したいのですが、 sedコマンドだけで可能ですか?
524 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/04/29(金) 06:51:34.85 .net] そういうのは awk で。
525 名前:名無しさん@お腹いっぱい。 [2016/04/29(金) 07:15:23.81 .net] どうしてもsedだけでやたいんです! お願いします!
526 名前:名無しさん@お腹いっぱい。 mailto:sage [2016/04/29(金) 07:58:13.44 .net] UNIX哲学に戻るんだ。 1つのことをうまくやる、ものを組み合わせればいいんだから、まずはawkでやってみる。