我需要将日期添加到这些csv文件中。 这是我在目录上获得的。
ls -1 *Limit*
comeLimitChanges.csv
andLimitSnapshot.csv
playLimitChanges.csv
withLimitSnapshot.csv
usChanges.csv
dannyLimitSnapshot.csv
这是脚本。
#!/bin/bash
DATE=$(date +%Y%m%d)
for i in *Limit*
do
ddotcsv="$i.$DATE.csv"
echo "$i" "$ddotcsv"
sleep 1
done
以下是结果 - 我需要将csv从end的后缀中删除,并且不想使用cut。 必须有一种比回声“$ i”更好的方法切-d'。' -f1
comeLimitChanges.csv.20171002.csv
andLimitSnapshot.csv.20171002.csv
playLimitChanges.csv.20171002.csv
withLimitSnapshot.csv.20171002.csv
usChanges.csv.20171002.csv
dannyLimitSnapshot.csv.20171002.csv
我需要这个:
comeLimitChanges.20171002.csv
andLimitSnapshot.20171002.csv
playLimitChanges.20171002.csv
withLimitSnapshot.20171002.csv
usChanges.20171002.csv
dannyLimitSnapshot.20171002.csv
〜 〜
答案 0 :(得分:1)
只需使用shell parameter expansion,suffix substring removal form, ${var%suffix}
删除csv
后缀,然后添加日期(我将其重命名为小写变量,因为allcaps通常用于shell中的全局变量):
#!/bin/bash
today=$(date +%Y%m%d)
for i in *Limit*; do
ddotcsv="${i%csv}$today.csv"
echo "$i $ddotcsv"
sleep 1
done