28768


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]


CC BY-SA 3.0
2016-09-08T13:23:05.947
28766
2016-09-08T14:27:00.983
7590
question
macos bash
scriptコマンドを用いて10秒間のログを保存したい

[code]

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

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

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


CC BY-SA 3.0
2016-09-08T14:16:00.503
28768
2016-09-08T14:27:00.983
2016-09-08T14:27:00.983
3054
3054
28766
answer