68user's page 掲示板

Prev< No. 5036〜5054> Next  [最新発言に戻る] [過去ログ一覧]
No. 5040 # あきもと 2010/01/18 (月) 23:55:19
Bシェルで、whileとreadを使ったファイルからの読み込み
について教えてください。

while文の中の変数をwhile文の外で使いたいのですが、
以下の様に、whileとreadを使ってファイルから読み込み
doをdoneの間で処理を行い、ループを抜けた後、doneの
後ろで、結果を表示させたのですが、正しく表示されません。

どうしたら正しく表示されますか。

環境
    Solaris8
    Bシェル

---------------------------------------------------------
#!/bin/sh
#

num=0

while read line ; do
        echo $line
        num=`expr $line + $num`
done < a.txt

echo "-----"
echo $num


cat a.txt
1
2
3
4
5
6
7
8
9
10

No. 5041 # おう 2010/01/19 (火) 01:28:56
Bシェルで、sedを使って、2行を1行にしているのですが上手く行きません。

改行している次の行で、半角スペースから始まっている行を、sedを使って
1行にしたいのです。

sed -e ':loop' -e '$b' -e 'N;/\n /{s/\n *//;b loop' -e '};P;D;b loop' file.txt

としたのですが、最初に引っかかったのは、1行になるのですが、
それ以降のものは、1行になりません。

環境
    Solaris8
    Bシェル

内容
---------
[Fri Jan 1 00:00:00] 開始
[Fri Jan 1 00:00:00] INFO:あいうえお
  abcdefg
[Fri Jan 1 00:00:00] INFO:あいうえお
    1234567890
[Fri Jan 1 00:00:00] INFO:あいうえお
                    aaaaaaa bbbbbb cccccc
[Fri Jan 1 00:00:00] INFO:あいうえお
        ABC 1234
[Fri Jan 1 00:00:00] INFO:12345
[Fri Jan 1 00:00:00] INFO:ABCDE
[Fri Jan 1 00:00:00] INFO:あいうえお
[Fri Jan 1 00:00:00] 終了

期待する結果
----------
[Fri Jan 1 00:00:00] 開始
[Fri Jan 1 00:00:00] INFO:あいうえお abcdefg
[Fri Jan 1 00:00:00] INFO:あいうえお 1234567890
[Fri Jan 1 00:00:00] INFO:あいうえお aaaaaaa bbbbbb cccccc
[Fri Jan 1 00:00:00] INFO:あいうえお ABC 1234
[Fri Jan 1 00:00:00] INFO:12345
[Fri Jan 1 00:00:00] INFO:ABCDE
[Fri Jan 1 00:00:00] INFO:あいうえお
[Fri Jan 1 00:00:00] 終了

実際の結果
---------
[Fri Jan 1 00:00:00] 開始
[Fri Jan 1 00:00:00] INFO:あいうえお abcdefg
[Fri Jan 1 00:00:00] INFO:あいうえお
    1234567890
[Fri Jan 1 00:00:00] INFO:あいうえお
                    aaaaaaa bbbbbb cccccc
[Fri Jan 1 00:00:00] INFO:あいうえお
        ABC 1234
[Fri Jan 1 00:00:00] INFO:12345
[Fri Jan 1 00:00:00] INFO:ABCDE
[Fri Jan 1 00:00:00] INFO:あいうえお
[Fri Jan 1 00:00:00] 終了

となります。
期待する結果を得たいのですが、どうすればよいですか。

No. 5042 # zsh 2010/01/21 (木) 17:14:43
>>5040 あきもと
>>4776 zsh
を参照してください。

>>5041 おう
sed -e '$!N; s/\n \{1,\}//; P; D' file.txt
でどうでしょうか?

No. 5045 # h.maruwa 2010/01/23 (土) 03:47:25
管理人さんへ
『User-Agent 統計』のページ
(http://x68000.q-e-d.net/~68user/cgi-bin/view-browser.cgi)
が『エラー : 内部エラーが起こりました。』となっているので
お知らせします。

No. 5047 # あきもと 2010/01/23 (土) 17:10:34
>>5042 zsh

ありがとうございます。
教えて頂いたところに書いてある方法で
上手くいきました。

No. 5048 # おう 2010/01/23 (土) 20:18:10
>>5042 zsh

ありがとうございます。
上手くいきました。

No. 5049 # ボンジー 2010/01/26 (火) 20:30:18
はじめまして。ボンジーと申します。ハッキングのやり方を教えてください。しーローとなもので

Prev< No. 5036〜5054> Next  [最新発言に戻る] [過去ログ一覧]