0

複数の列を含む CSV ファイルがあります。

しかし、 LINUX シェル スクリプトを使用してこの CSV ファイルを読み取りたいのは、その下に値を持つKeyという名前のヘッダーを持つ最初の列だけです。

TST-1, TST-2, ..., PROJ-1,PROJ-2,....

最初の値 - TST-1 を選択します。ディレクトリ /opt/usr/tomcat/home/data/attachments/ の下にTST-1という名前のサブディレクトリがあるかどうかを確認する必要があります。はいの場合、このディレクトリをバックアップ ディレクトリに移動します。同様に、最初の列のキーの下の残りの値

Linux でfindコマンドとrsyncコマンドを使用すると、CSV ファイルを使用せずにディレクトリを移動できますが、取得したデータは CSV ファイルに保存されており、Linux シェル スクリプトを使用して CSV を読み取ることに慣れていません。

誰でもこれで私を助けることができます!

ありがとう、ナレンドラ。

4

1 に答える 1

1

これをやってみてください:

value=$(awk -F, 'NR>2{print $1}' file.csv)
if [ -d "/opt/usr/tomcat/home/data/attachments/$value" ]; then
    mv "/opt/usr/tomcat/home/data/attachments/$value" backup_drive
fi

注 :CSV単純な場合は問題ありませんが、 のような値がある場合は、 を"aa,aa", xxx, zzz使用するperlrubypythonCSVパーサーを使用することをお勧めします

于 2013-03-01T08:02:43.990 に答える