findを呼び出すbashスクリプトの構文エラー

findを呼び出すbashスクリプトの構文エラー

このスクリプトのエラーはどこですか?

#!/bin/bash
rep="git"

files=`find' ${rep} '-type f`
for f in ${files} do
    echo $f
done

find git -type fシェルから単独で実行すると動作します!

ベストアンサー1

一重引用符で囲まれた文字列は挿入されません。これはあなたが走ろうとしていることを意味します。

find ' ${rep} '-type f

一重引用符を削除します。 $repを引用する必要がある場合(たとえば、スペースが含まれている場合)、二重引用符を使用してください。

files=`find "$rep" -type f`

二重引用符内にスペースはありません。 「git」ではなく「git」を検索していますか?

おすすめ記事