私が果物データベースを作成しているとしましょう。この形式を含むテキストファイルを使用してください。
(Fruit:Quantity:Cost)
Apple:10:1
Orange:20:2
Pears:10:3
Banana:20:4
10 Apples at $1 each.
20 Oranges at $2 each.
10 Pears at $3 each.
20 Bananas at $4 each.
私の簡単なスクリプトは次のとおりです。
echo "Enter fruit to find"
read fruit
echo "Enter quantity to find"
read count
echo "Enter cost to find"
read cost
grep $fruit FruitDB.txt
データベースに果物が表示されます。
ところで、どうすればgrepとcutを一緒に使用して数量またはコストで見つけることができますか?数量計算領域に20と入力すると、オレンジとバナナが表示されます。または、数と費用を入力すると、基準に一致する項目のみが表示されます。
答え1
cut
まったくそうする必要はありません。grep
次の形式で十分です。
grep "^$fruit:$count:$cost$" FruitDB.txt
その時点でgrepを望まないすべての変数を削除します(ただし、区切り文字:
、行の先頭と末尾の記号、および(最も変数の場合)は保持します)^
。$
たとえば、次をgrepするには、次のようにしますcount=20
。
$ grep ":$count:" FruitDB.txt
Orange:20:2
Banana:20:4
grepcount=20
とcost=2
:
$ grep ":$count:$cost$" FruitDB.txt
Orange:20:2