Bashスクリプト自体が多くの新しいプロセスを生成します。

Bashスクリプト自体が多くの新しいプロセスを生成します。

今作成中のスクリプトは、3つのデータ列を後で他のセクションで使用する3つの異なる配列に格納することです。

スクリプトcallconv.shは次のようになります。

#! /bin/bash 
array=$(sqlite3 /home/pi/dir/rec_call/CallRecords.sqlitedb "SELECT address FROM calls")
array2=$(sqlite3 /home/pi/dir/rec_call/CallRecords.sqlitedb "SELECT timestamp FROM calls")
array3=$(sqlite3 /home/pi/dir/rec_call/CallRecords.sqlitedb "SELECT date FROM calls")

Rest of script...

問題は、callconv.shを実行すると、この3行でcallconv.shとsqlite3という名前の新しいプロセスが約30〜40個生成されることです。特に、これらの多くは期限切れのラベルを貼っています。

このスクリプトをRaspbmcを使用してRaspberry Piで実行したいのですが、動作しません。ただし、CentOS vpsで実行しようとすると問題なく実行されます。この問題はオペレーティングシステムに関連している可能性がありますか?それとも、私がここで間違いなく間違ったことをしているのか教えてもらえますか?ありがとうございます!

答え1

「30または40」プロセスを見つけるためにどのようにプロセスを一覧表示しますか?見ていないのは確実ですか?代わりにプロセス?データベースなどの高度なプログラムでは、起動時に複数のスレッドを作成するのが一般的です。

注:このコードは生成されません。ソート- コマンドの標準出力はsqlite3次のように保存されます。ひも変わりやすい。コマンド出力(区切り)を配列として保存するには、$IFSを使用する必要がありますmy_variable=($(my_command))

関連情報