アプリ版:「スタンプのみでお礼する」機能のリリースについて

正規表現の使い方で困っています。
lsでディレクトリの中身を確認して、その名前とひっとするものがあれば、IFの中に入りたいのですが、エラーが出てしまいます。
正しい書き方をご存じのかたご回答のほど宜しくお願いします。

set `cat /DS/tmp/liste.fal |grep -v \#`
for i
do
verz=$(dirname $i)
set `ls $verz`
for j
do
if (test $j = "Kommentar.txt") then
echo "$j ist jetzt Kommentar.txt"
echo "cp $j $zielverz"

elif [[ "$j" =~ "*fal" ]] then
echo "$j ist jetzt *.fal"
echo "cp $j $zielverz"

と続いていくのですが、[[ "$j" =~ "*fal" ]] この部分が間違っているようです。
シンタックエラーがでます。
私が検索したいファイル名はのようなかたちです。
riipe.fal
フォルダの中には、他にも
rippe.fal.neu
rippe.erg.fal.neu
Kommentar.txt
という名前のものがあります。

宜しくお願いします。

A 回答 (2件)

「lsでディレクトリの中身を確認して、その名前とひっとするものがあれば、IFの中に入りたい」というのが, 何をしたいのか分かりません. とりあえず


・「ディレクトリの中身」を「確認する」というのはどういう操作なのか
・「その」が何を指しているのか
・「その名前とひっとするもの」の「もの」は何なのか
が読み取れません.
「あなたのしたいこと」をもっと明瞭に (かつ理解しやすく) 書いてみた方がいいんじゃないかなぁ.
    • good
    • 0
この回答へのお礼

コメントありがとうございました。
指定したファイルがある場合のみ、そのディレクトリの中の、そのファイルをディレクトリの階層を守ったままコピーまたは、リンクしたいのです。
ちなみに、試行錯誤した結果、
elif (echo $j | grep 'fal$')
でできました。

お礼日時:2009/12/16 18:12

bone shellならば、ワイルドカードになりますが、case文を使ってみたらどうでしょうか?


http://chaichan.web.infoseek.co.jp/src/BSH.htm#B10
    • good
    • 0
この回答へのお礼

ありがとうございます。参考にさせていただきます。

お礼日時:2009/12/16 18:39

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!