済みません、``(バッククォート)を使ったコマンド実行について教えてください。

【環境】
Solaris 9
C-Shell

【やりたいこと】
あるディレクトリのファイル一覧を取得し、各ファイルに対して処理を行いたい。

【困ったこと】
以下のようなシェルを作成しました。

foreach file ( `ls -1 ディレクトリ` )

・・・処理・・・

end

ここで、指定したディレクトリに含まれるファイルが少なければ問題ないのですが、
ファイル数が5000あるディレクトリを指定するとエラーが表示されてしまいます。
試しに、以下のとおりコマンドラインから実行しても同様でした。

% echo `ls -1 ディレクトリ`
`` から展開する単語が多すぎます。

「`` から展開する単語が多すぎます。」というエラーが表示されます。
このエラーメッセージでGoogle等を検索しても1件もヒットしませんでした。

どうにか解決できないものでしょうか。
よろしくお願いいたします。