0
を見つけるために、スクリプトの引数として与えられたグロブ表現を渡し、これが私のスクリプト私は、コマンドラインで与えられた引数でいくつかのファイルを見つけたい
find -name $1
です。どうして?私はそれを修正することができますか?
を見つけるために、スクリプトの引数として与えられたグロブ表現を渡し、これが私のスクリプト私は、コマンドラインで与えられた引数でいくつかのファイルを見つけたい
find -name $1
です。どうして?私はそれを修正することができますか?
ワイルドカードの引用符で囲まれていない拡張子は、パターンに一致するカレントディレクトリ内のファイル名のリストに置き換えられます。したがって
:
set -- '*.txt' # same as running your script with '*.txt' as first argument
touch a.txt b.txt c.txt
find -name $1
は...実行されます:
find -name a.txt b.txt c.txt
を...有効な使用されていません。
常にあなたの拡張を引用し、グロブ拡大を避けるために:find . -name "$1"
ダブル$ 1引用。 [shellcheck](http://shellcheck.net)を試してください。 –
ところで、 'find -name $ 1'は、ディレクトリを検索しないようにする(find。-nameの代わりにこれを使用する) $ 1 "')はGNUismであり、他のプラットフォームに移植することはできません。 –