У меня есть цикл написан в сценарии, как так:Передача переменной в SED внутри для цикла
for((i=0;i<${#hours[@]})); do
dates=("$(last | egrep -v "reboot|wtmp|^$" | sort | tr -s " " | sed "$i q;d" | cut -f5-7 -d' ')")
done
Если я просто выполнить команду, назначенную dates
в терминале, заменяя $i
(внутри SED команды) числом (0,1,2 ...), он возвращает мне именно то, что я хочу, например, Nov 15 23:15
.
Однако, если внутри цикла for
, у меня, похоже, проблема с командой sed, не увеличивающей $i
. Что я делаю не так?
Вы пытаетесь добавить в массив для каждой итерации цикла? –
Я предлагаю заменить 'i = 0' на' i = 1'. – Cyrus
@TomFenech Да, я пытаюсь добавить дату с каждой итерацией. –