次のように番号付けされたイメージファイルを含むディレクトリがあります。
01.png
02.png
03.png
03.svg
04.png
05.png
06.jpg
07.png
08.png
09.png
09.svg
10.png
場合によっては、ファイルにはさまざまな形式の複数のバージョンがありますが(たとえば、上記のファイルバージョンとファイルバージョンpng
)svg
、数字は連続しています。通常、ディレクトリごとにこれらのファイルは40から80です。数字は、これらの画像が原稿(Word文書ですが重要ではありません)に表示される順序に対応します。画像の順序を決定する他の方法はありません。03
09
原稿に新しい画像を追加する場合は、その画像のコピーを正しい番号でこのディレクトリに配置する必要があります。したがって、新しい画像が原稿の5番目の画像の場合は、スペースを確保するためにディレクトリのファイル名を次のように変更する必要があります。
01.png
02.png
03.png
03.svg
04.png
06.png
07.jpg
08.png
09.png
10.png
10.svg
11.png
コマンドラインまたはスクリプトまたはマクロで特定の番号から始まり、すべてのファイルの番号を変更する最も簡単な方法は何ですか? bashを使用して標準のFedora Linuxをインストールしました。
ベストアンサー1
私はそれが次のことを行うべきだと思います:
#!/bin/bash
NEWFILE=$1
for file in `ls|sort -g -r`
do
filename=$(basename "$file")
extension=${filename##*.}
filename=${filename%.*}
if [ $filename -ge $NEWFILE ]
then
mv "$file" "$(($filename + 1))".$extension
fi
done
スクリプトは1つのパラメータ、つまり新しい画像の番号を使用します。
PS。イメージの外側にある別のディレクトリにスクリプトを配置します。イメージディレクトリには、説明されているように名前付きイメージのみが必要です。