Поскольку вы отметили Linux, в вашем распоряжении мощная дата
утилита. Вот как я могу подойти к такой задаче (в зависимости от того, что вы хотите, чтобы произошло, если сегодня пятница — это перенесет вас на следующую неделю):
now=$(date +%s)
fri=$(date +%s -d "next Friday")
days=$(( (fri - now) / 86400))
echo Today is $(date +%A), you have $days until Friday
Sí, cuando itera sobre la salida de cat file
, itera sobre las palabras .
Una solución:
PATH=/opt/cprocsp/bin/amd64:$PATH
while IFS= read -r line; do
certmgr -inst -cont "$line"
done <file
Esto leerá las líneas, una por una, y leerá correctamente las barras invertidas y los espacios entre las palabras. Observe la cita de $line
. Consulte " Entendiendo "IFS= read -r line" ".
Originalmente incluí una versión que usaba xargs
, pero noté que esto no conservaba las barras invertidas en los datos file
en algunas circunstancias, y eliminaba las comillas simples.