#!/bin/bash
while read line; do
echo "$line"
date=$(echo "$line" | cut -d/ -f1 )
month=$(echo "$line" | cut -d/ -f2 )
echo $month"/"$date"/2017"
done < ~/Downloads/Dates.csv
しかし、私が得た出力は03/02/2017の代わりに// 2017です。 (例)日付と月のフィールドがいっぱいになっていない理由がわかりません。
サンプル出力は次のとおりです。 [![ここに画像説明を入力][1]][1]
{ //2017年
//2017
//2017
//2017}
答え1
あなたのスクリプトが私にとって効果的であるため、スクリプトに何が問題なのかわかりません。しかし、あなたが望むことを行うより簡単で、より良い、安全な方法があります。
awk -F/ '{ OFS="/"; print($2,$1,$3) }' ~/Downloads/Dates.csv
この方法がうまくいかない場合、またはスクリプトが予想される出力を生成しない理由を知りたい場合は、質問を編集して入力内容をより具体的に説明する必要があります。