我有一个运行类似这样的批处理脚本 ./test.sh -d 2013-03-25 ;这里的日期是用户输入;但我需要的是将日期列表传递给这个批处理脚本;我有 25 个连续日期,从 03/01/2013 到 03/25/2013;我怎样才能将每个日期动态传递给这个批处理可执行文件。
任何帮助将不胜感激
最佳答案
一种方法是将日期存储在数组中。这在 shell 脚本中运行良好。
dates=(2013-03-01 2013-03-02 etc...)
for date in "${dates[@]}"; do
./test.sh -d "$date"
done
另一种方法是将日期存储在文本文件中,每行一个。如果你这样做了,那么你可以像这样传递它们:
xargs -a dates.txt -d '\n' ./test.sh
或者,由于日期是连续的并且在同一个月,您可以通过编程循环遍历它们。
for day in 00..25; do
./test.sh -d "2013-03-$day"
done
for ((day = 1; day <= 25; ++day)); do
./test.sh -d "2013-03-$(printf '%02d' "$day")"
done
关于linux - 将日期列表传递给 linux 中的批处理文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15618616/