注:オプション1とオプション2はオプション1を選択することを意味し、「1番と2番を入力してください」というオプションが表示されます。

注:オプション1とオプション2はオプション1を選択することを意味し、「1番と2番を入力してください」というオプションが表示されます。

私は次の正確な数を予測するプログラムにランダムなデータを供給しようとしてきました。続行するには、別のオプションcを使用してオプション2にリンクされているオプション1に対して無限ループパイプラインを実行したいと思います。その理由は、ランダムに生成された数字に見られるパターンを予測するためにAIを訓練する必要があるためです。

注:オプション1とオプション2はオプション1を選択することを意味し、「1番と2番を入力してください」というオプションが表示されます。

これがシェルのプログラムの外観です。

Select your choice.

1. Enter the newest number.

2. Find a new number.


-------------------------------------------------------------------

Select your choice.

1. Enter the newest number.

2. Find a new number.


 Enter number 1. 

 Enter number 2. 

 Enter c to continue or 0 to quite 

パイプラインを機能させようとしましたが失敗しました。

./RNGAI | echo "1" | shuf -i 1-26 -n1 | echo "2" | shuf -i 1-26 -n1 | echo "c" | ./RNGAI
./RNGAI | echo "1" | echo $((RANDOM%10))| ./RNGAI & echo "2" | echo $((RANDOM%10)) & echo "c" 

いくつかのパイプを試した後にエラーが発生しました。これらのパイプは技術的に機能しますが、RNGAIプログラムはパイプを使用してループを実行するたびにshow -nanエラーを発生させます。実行するパイプラインとスクリプトは次のとおりです。

while true
do
echo 1
echo $ od -A n -N 2 -t u2  /dev/random
echo 2
echo $ od -A n -N 2 -t u2  /dev/random
echo c
done | ./RNGAI

これはパイプです

 while :; do printf "%s\n" 1  seq 1 26 | sort -R | head -n 1 2  seq 1 26     | sort -R | head -n 1 c; done | ./RNGAI
 while :; do printf "%s\n" 1 od -A n -N 2 -t u2  /dev/random 2 $od -A n -N 2 -t u2  /dev/random c; done | ./RNGAI
 while :; do printf "%s\n" 1 shuf -i 1-26 -n1 2 shuf -i 1-26 -n1 c; done | ./RNGAI

RNGAIプログラムでエラーが発生する

   Select your choice.

   1. Enter the newest number.

   2. Find a new number.

      Enter number 1. 
      Enter number 2. 
      -nan
      -nan
       Enter c to continue or 0 to quite 
       Enter number 1. 
       Enter number 2. 
       -nan
       -nan

答え1

私はあなたがこれを探していると思います:

while true
do
    echo 1
    echo $((RANDOM % 10))
    echo 2
    echo $((RANDOM % 10))
    echo c
done | ./RNGAI

またはもっと簡潔に言えば:

while :; do printf "%s\n" 1 $((RANDOM % 10)) 2 $((RANDOM % 10)) c; done | ./RNGAI

データをプログラムにパイプしてから入力したいです。今後管路:

<source of input> | <command that uses the input>

関連情報