ファイル名をテーブルの列と比較し、その項目が見つかった場合は、他の列に基づいて名前を変更します。

ファイル名をテーブルの列と比較し、その項目が見つかった場合は、他の列に基づいて名前を変更します。

(不便にも)次の名前のディレクトリには、広範なファイルセットがあります。

COMMONSTUFF_X_Y_**VARIABLE-IDENTIFIER**_COMMONSTUFF

また、ある列にはフルネームではなく変数識別子部分のみを含むテーブルがあり、VARIABLE-IDENTIFIER別の列には単純な一意の名前(同じ行にリンク)が含まれており、それを複雑な名前に置き換えたいと思います。ディレクトリ内のファイルが不便です。

ファイル名を読み、それがテーブルの特定の列の変数識別子に対応していることを確認し、それが真の場合は、別の列から必要な名前を読み取ってこの名前のドキュメントを持つように名前を変更するスクリプトがある可能性があります。

私はシェルスクリプトに初めて触れたので、どこから始めるべきかわかりませんが、これは可能だと思います。

答え1

私はこれを行いますawk

awk -F, '{system("mv COMMONSTUFF_X_Y_" $1 "_COMMONSTUFF " $2)}' mycsv.csv

ここで、1はVARIABLE-IDENTIFIERの(1-インデックス付き)列番号、2は単純識別名の列番号です。

関連情報