画面からスクリプトを実行する

画面からスクリプトを実行する

別の画面でbashスクリプトを実行したいです。スクリプトはプログラムを複数回呼び出し、毎回長い時間待ちます。最初に考えたのは、単に画面を開いてスクリプトを呼び出すことでしたが、ctrl-a dスクリプトの実行中は分離(通過)できないようです。それで、ちょっと調べて、こんなことを見つけました。ガイドラインShebangを次に変更します。

#!/usr/bin/screen -d -m -S screenName /bin/bash

ただし、これも機能しません(オプションは認識されません)。どんな提案がありますか?

PS:これは私の目的に合うかもしれないと思いますがscreen -dmS name ./script.sh、これをスクリプトに統合する方法はまだ疑問です。ありがとうございます。

ベストアンサー1

これシェルボーン表示される行は一部のUNIXバリアントでは機能しますが、Linuxでは機能しない可能性があります。 Linux shebangは限られています。選択は1つだけです。完全な文字列は、別の単語ではなく-d -m -S screenName /bin/bash単一のオプションとして渡されます。screen

複数のファイルや参照を処理するのではなく、screen内でスクリプトを実行したい場合は、そのスクリプトをscreen内でまだ実行していない場合は、screenを呼び出すシェルスクリプトにすることができます。

#!/bin/sh
if [ -z "$STY" ]; then exec screen -dm -S screenName /bin/bash "$0"; fi
do_stuff
more_stuff

おすすめ記事