0

特定のディレクトリ内のファイルの最初のアルファベット(文字列)を比較したいのですが、比較が真になると、スクリプトはその特定のファイルを別のディレクトリにコピーまたは移動することを目的としています。

この例では、アルファベット「m」より大きいすべてのファイルをコピーします。つまり、ファイルの最初のアルファベットが「m」より大きいとすぐに、

比較するファイルの例:mard_2002.dat、accd_2001.dat、mcck_1999.dat qddf_2010.dat

x = "m"

*.dat内のファイルの場合

行う

t = "$(echo $ file | awk'{print substr($ 1,1,1)}')"

if ["$ t"> "$ x"]

次に
cp$file ./TEMPecho"ファイルがコンパイルされました"elseecho $filefi
読み取り一時停止が完了しました

上記のif["$t"> "$x"]または["$t" <"$ x"]コマンドは、常にtrueを返すようです。スクリプトは、等号を使用した場合にのみ正しくコピーされます。["$ t" = "$ x"]の場合、この場合、アルファベット「m」で始まるファイルのみがコピーされます。

コメントはよろしくヤコブお願いします

4

1 に答える 1

0
FOO=m

for FILE in `ls -1 [$FOO-z]*|grep -v "^$FOO"`
do
echo "Would do things to file $FILE"
done
于 2012-05-20T10:22:48.580 に答える