У меня есть следующий тестовый скрипт
/^[^a-zA-Z0-9]/ {
DATEd[$3] = $1
}
END {
print " \"data\": ["
for (i = 0 ; i <= 5; i ++ ) {
{ print " [" i ", \"" DATEd[i] "\"],"}
}
print " ]"
}
И читаем из этого текстового файла
2011-01-22 22:12 P16A22_110114072915 22 1312 75 13.55 1399
2011-01-22 22:12 P16A22_110114072915 22 1312 75 13.55 1399
2011-01-22 22:12 P16A22_110114072915 22 1312 75 13.55 1399
2011-01-22 22:12 P16A22_110114072915 22 1312 75 13.55 1399
2011-01-22 22:12 P16A22_110114072915 22 1312 75 13.55 1399
2011-01-22 22:12 P16A22_110114072915 22 1312 75 13.55 1399
Но он не распечатывает, что я хочу, я хочу, чтобы он распечатал
"data": [
[0, "2011-01-22"],
[1, "2011-01-22"],
[2, "2011-01-22"],
[3, "2011-01-22"],
[4, "2011-01-22"],
[5, "2011-01-22"],
]
Когда это на самом деле только распечатки
"data": [
[0, ""],
[1, ""],
[2, ""],
[3, ""],
[4, ""],
[5, ""],
]
Так почему же "DATEd [$ 3] = $ 1" пусто?
Кроме того, как я могу проверить длину массива?
DATEd.length в этом случае не работает.
Спасибо
EDIT_ _ __ _ __ _ __ _ __ _ __ _ __ _ __ _ __ _ __ _ __ _ __ _ __ _ __ _ __ _ ___
Так что с помощью @Fredrik и @geekosaur я пришел куда-то с этим, теперь к некоторым последним вопросам
1) Сценарий теперь выглядит так
/[a-zA-Z0-9]/ {
DATEd[NR-1] = $1
}
END {
print " \"data\": ["
for (i in DATEd) {
{ print " [" i ", \"" DATEd[i] "\"],"}
}
print " ]"
}
И дает следующий вывод
"data": [
[4, "2011-01-26"],
[5, "2011-01-27"],
[6, "2011-01-28"],
[0, "2011-01-22"],
[1, "2011-01-23"],
[2, "2011-01-24"],
[3, "2011-01-25"],
]
Но я хочу, чтобы это выглядело так
"data": [
[0, "2011-01-22"],
[1, "2011-01-23"],
[2, "2011-01-24"],
[3, "2011-01-25"],
[4, "2011-01-26"],
[5, "2011-01-27"],
[6, "2011-01-28"]
]
I.E. Сортировать и удалить последний символ ',' перед последним закрывающим символом ']'. Можно ли это легко получить? =)
Спасибо =)
РЕДАКТИРОВАТЬ 3 Окончательный результат_ _ __ _ __ _ __ _ __ _ __ _ __ _ __ _ __ _ __ _ __ _ __ _ ____
Использовал комбинацию @geekosaur и @Fredrik contrib's =)
{
DATEd[NR-1] = $1; len++
}
END {
print " \"data\": ["
#for (i in DATEd) {
for (i = 0 ; i <= len-1; i ++ ) {
{ print " [" i ", \"" DATEd[i] "\"],"}
}
print " ]"
}