統合と使いやすさのために、2 つの非常に異なるスクリプトをマージしようとしています。これらのスクリプトをどのように表示し、操作するかについてのアイデアはありますが、開始するためにいくつかの助けを借りることができます。スクリプトの流れと外観は次のとおりです。
入力ファイルは、次の構文の標準テキスト ファイルです。
#Vegetables
Broccoli|Green|14
Carrot|Orange|9
Tomato|Red|7
#Fruits
Apple|Red|15
Banana|Yellow|5
Grape|Purple|10
スクリプトは、このファイルの入力を受け取ります。コメント部分は無視されますが、それらを使用して出力が指示されます。したがって、それが野菜であるという事実に基づいて、区切り文字 (|) の間にリストされた値を使用して特定の機能を実行します。次に、Fruits に移動し、その区切り文字に基づいて、値に対して別のことを行います。おそらく、Vegetable/Fruit を値の 1 つに追加し、その値に応じて、このループ内でファイルを読み取る関数を実行します。これを開始するにあたり、ご協力いただきありがとうございます。
更新:だから私はIFSセットアップを実装しようとしていて、より論理的な配置を考えています。入力ファイルには、パラメータ内に表示される「カテゴリ」があります。したがって、セットアップは次のようになります。
Vegetable|Carrot|Yellow
Fruit|Apple|Red
Vegetable|Tomato|Red
そこから、スクリプトは行を読み取り、機能を実行します。したがって、基本的にシェルでのこのタイプのセットアップ:
while read -r category item color
do
if [[ $category == "Vegetable" ]] ; then
echo "The $item is $color"
elif [[ $category == "Fruit" ]] ; then
echo "The $item is $color"
else
echo "Bad input"
done < "$input_file"
それらの線に沿った何か...私はそれをすべてまとめるのに苦労しています。