サーバーコンソールで/list
を使用して、オンラインプレーヤー用のミニクラフトサーバーを確認したいと思います。これは私に以下の入力を与える。目標は、プレーヤーが特定のリストにあるかどうかを比較することです。彼がいないならば、私たちは彼を蹴る。 output.log
には、許可されたプレーヤー(各1行)が記載されています。bashでawkを使用して入力をフィルタリングする
mc()
{
screen -S mcserver -p 0 -X stuff "$1^M"
}
if ! grep -q $player output.log; then
echo "$player do not runs launcher."
mc "kick $player"
我々は、オンラインのプレイヤーを取得すると、許可リストにあるかどうかをチェックすることができますプレーヤーのために、以下の入力をフィルタリングしたいと思います:
[18:43:08] [pool-2-thread-528/INFO]: There are 2/100 players online.
[18:43:08] [pool-2-thread-528/INFO]: Tester1212, Me99666
背後にある考え方は、入力をフィルタリングすることですawkを使って、,
などを見て見つけてください。
最終的な出力は、(1行としてそれぞれ)でなければなりません:
Tester1212
Me99666
のみ1プレイヤーがオンラインで、何,
がない場合、問題はそれをフィルタリングすることができます。
あなたは、この特定の行があるべきものであると他にどのように識別します解析?それは常に出力の2番目の行ですか? 「N/N選手がオンライン」という行の後に常に表示されますか? – JNevill
私はこの質問を閉じるのに投票しました。なぜなら、あなた自身のコードを使って援助を求めるのではなく、ツールやソリューションのための勧告の要求であると思われるからです。これはあなたの質問をStackOverflowのトピックから外します。その評価が間違っていて、本当にあなた自身のコードを書くのを助けたいのであれば、[今までのところあなたの仕事をあなたの質問に追加してください](http://stackoverflow.com/posts/35433718/edit)閉じる投票。 – ghoti
はい、プレイヤーは「オンライン/ N/Nプレーヤーがオンラインです」の後に常に直接リストされます。 –