シェル変数ケースに関する注意事項です。

シェル変数ケースに関する注意事項です。

dir1という新しいディレクトリを作成しました。

その後、タッチコマンドを使用してリンゴバナナニンジンナツメ卵魚ブドウハムを追加しました。

その後、ファイルを作成しましたWildcards.sh(btw、nanoを使用してファイルを作成します)。

#!/bin/bash

# This script will include wildcards

find . dir1
echo The contents of dir1 are:$find
echo

次に、実行して動作するかどうかをテストします。しかし、私はそうしたくありません。

私はそれを次のように実行します./Wildcards.sh

そして得た

.
./ham
./egg
./grape
./date
./Wildcards.sh
./apple
./fish
./carrot
./banana
find: 'dir1': No such file or directory
The contents of dir1 are:

出力は次のようになります。 The contents of dir1 are: apple banana carrot date egg fish grape ham

私の間違いを見つけるのを手伝ってください。

ベストアンサー1

dir1が作業ディレクトリの場合、dir1が見つかりません。 「$find」変数には何も入れないでください。

FIND=$(cd ~/dir1; echo *)

echo "The contents of dir1 are: $FIND"

ホームフォルダの作業ディレクトリをdir1に変更し、bashに隠されていないすべてのアイテム( "*")を表示させます。結果はFIND変数に保存されます(ただし、エラーがある場合はFINDにも保存されます)。隠しファイルとディレクトリも必要な場合は、次のようにします。

FIND=$(cd ~/dir1; echo .* *)

おすすめ記事