scriptコマンドを用いて10秒間のログを保存したい


scriptコマンドでログ取得を開始し、10秒後にexitしようとしています

[code]

    #!/bin/sh    
    script [ログファイル名]
    screen /dev/tty.usbserial* 115200
    sleep 10 ; exit
    
[/code]

下記のような結果になってしまします。

[code]

    Script started, output file is [ログファイル名]
    bash-3.2$ 
    
[/code]



[code]

    script -c '(sleep 10; kill $$)& screen'
    
[/code]

`-c`オプションがある`script`でしたら、こんな感じでよいと思います。`util-
linux`に含まれる`script`でLinux上でテストしました。  
まずサブシェルをバックグラウンドで起動し、10秒後に自分を`kill`するようにしておきます。その後本命の対話コマンドを起動します。

（`-c`
オプションに与える引数はシングルクォートで囲っています。そうしないと`$$`が`script`を起動したシェルのプロセスIDになってしまいます。）



[code]

    script -c '(sleep 10; kill $$)& screen'
    
[/code]

`-c`オプションがある`script`でしたら、こんな感じでよいと思います。`util-
linux`に含まれる`script`でLinux上でテストしました。  
まずサブシェルをバックグラウンドで起動し、10秒後に自分を`kill`するようにしておきます。その後本命の対話コマンドを起動します。

（`-c`
オプションに与える引数はシングルクォートで囲っています。そうしないと`$$`が`script`を起動したシェルのプロセスIDになってしまいます。）

