shellscriptでfile名の先頭だけ複数変更?

OKWave

2008-01-29 14:00

shellscriptでfile名の先頭だけ複数変更?

はじめまして。Debianを使っています。 たぶん素人な質問かと思うんですが、ちょっと手間取ってて困っています。

シェルスクリプトで複数のファイル名の一部を変更したいのです。例えば、
1a.txt,2a.txt,3a.txt,...

1.txt,2.txt,3.txt,...
のような要領です。
以前、ディレクトリ内のJPGファイルの拡張子をJPGからjpgにすべて変換させるときに、for文を使って、


#!/bin/sh
for nm in *.JPG; do
mv $nm ${nm%.JPG}.jpg;
done

のようにしたのですが、これとの違いだけでも教えていただけたら幸いです。

良回答

${nm%.JPG} の意味はわかってますか?

ZDNET Japan 記事を毎朝メールでまとめ読み(登録無料)

ZDNET Japan クイックポール

自社にとって最大のセキュリティ脅威は何ですか

NEWSLETTERS

エンタープライズ・コンピューティングの最前線を配信

ZDNET Japanは、CIOとITマネージャーを対象に、ビジネス課題の解決とITを活用した新たな価値創造を支援します。
ITビジネス全般については、CNET Japanをご覧ください。

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]