Вчерашняя дата

Обсуждение программ nnCron и nnCron LITE

Вчерашняя дата

Postby LTrack » Thu, 16 Dec 2004, 09:13

Может задачка и простая, но что-то никак :-(
Необходимо сформировать текстовый файл для fpt.exe, в котором имя одного файла содержит вчерашнее число.

#( ail_ftp
Action:
FILE-WRITE: "C:\Analis\zagruz\exe\1\ftp.ini" "open 172.16.5.23%crlf%"
FILE-APPEND: "C:\Analis\zagruz\exe\1\ftp.ini" "AIL%crlf%"
FILE-APPEND: "C:\Analis\zagruz\exe\1\ftp.ini" "AIL%crlf%"
FILE-APPEND: "C:\Analis\zagruz\exe\1\ftp.ini" "cd ..%crlf%"
FILE-APPEND: "C:\Analis\zagruz\exe\1\ftp.ini" "cd mcr%crlf%"
FILE-APPEND: "C:\Analis\zagruz\exe\1\ftp.ini" "cd ibibli%crlf%"
Year@ Mon@ Day@
-1 DAY+
FILE-APPEND: "C:\Analis\zagruz\exe\1\ftp.ini" "get inst06%0 esPICK% c:\analis\mmsut.txt%crlf%"
FILE-APPEND: "C:\Analis\zagruz\exe\1\ftp.ini" "bye%crlf%"
FILE-APPEND: "C:\Analis\zagruz\exe\1\ftp.ini" "quit%crlf%"
)#

В %0 esPICK% попадает то, что надо (т.е. 15 декабря там садится 14).
Но как это передать в файл? В моем варианте nnCron выдает "Внутренняя ошибка. Error # - 1073741819". Хотел значение
из стека присвоить переменной - тоже не получается. Как это сделать?

Подсткажите, пожалуйста, как решить с виду не сложную задачку?
LTrack
 
Posts: 5
Joined: Wed, 15 Dec 2004, 15:58

Postby VK » Thu, 16 Dec 2004, 11:47

конструкция 'Year@ Mon@ Day@ -1 DAY+' оставляет на стеке три значения (загляни в доку). Ты же используешь только одно, а остальные остаются мусором.

Кстати, я не уверен, что 'esPICK' будет работать с FILE-APPEND.

Что касается переменных, то этому посвящена целая глава в доках: http://www.nncron.ru/help/RU/working/variables.htm
CU
VK
User avatar
VK
 
Posts: 680
Joined: Wed, 14 Jul 2004, 19:17

Postby LTrack » Thu, 16 Dec 2004, 12:39

VK (far_away) wrote:конструкция 'Year@ Mon@ Day@ -1 DAY+' оставляет на стеке три значения (загляни в доку). Ты же используешь только одно, а остальные остаются мусором.

В доках нигде не встретилось, что стек надо чистить.
Про три числа знал, но мне нужно только первое. Как почистить остальной мусор?

Кстати, я не уверен, что 'esPICK' будет работать с FILE-APPEND.


Я тоже не уверен, поэтому и хотел присвоить значение стека переменной, но...

Что касается переменных, то этому посвящена целая глава в доках: http://www.nncron.ru/help/RU/working/variables.htm

Читал, перечитывал, пробовал. Однако присвоить значение стэка не получилось.

fVAR yday
...
Year@ Mon@ Day@
-1 DAY+
%0 esPICK% TO yday
LTrack
 
Posts: 5
Joined: Wed, 15 Dec 2004, 15:58

Postby Valery_Kondakoff » Thu, 16 Dec 2004, 12:45

CU
VK
User avatar
Valery_Kondakoff
Site Admin
 
Posts: 769
Joined: Thu, 01 Jul 2004, 20:49
Location: Moscow, Russia

Postby LTrack » Thu, 16 Dec 2004, 13:31



Как стек чистить - понял. Спасибо.
Но почему не получается переменной присвоить число из стека не понимаю? Читать книги по Форту ради этого все равно сейчас не смогу. А по ссылкам ничего объясняющего не нашел.

Если не сложно - напишите пример, как первое значение стека поместить в переменную! И чтобы крон при этом не ругался на синтаксис.
LTrack
 
Posts: 5
Joined: Wed, 15 Dec 2004, 15:58

Postby Valery_Kondakoff » Thu, 16 Dec 2004, 13:35

сначала покажи, как ты это сейчас делаешь (с очисткой стьека и т. д.)
CU
VK
User avatar
Valery_Kondakoff
Site Admin
 
Posts: 769
Joined: Thu, 01 Jul 2004, 20:49
Location: Moscow, Russia

Postby LTrack » Thu, 16 Dec 2004, 14:18

Valery_Kondakoff wrote:сначала покажи, как ты это сейчас делаешь (с очисткой стьека и т. д.)


#( ail_ftp
Time: 4 10 * * * *
fVAR yday2
Action:
FILE-WRITE: "C:\Analis\zagruz\exe\1\ftp.ini" "open 172.16.5.23%crlf%"
FILE-APPEND: "C:\Analis\zagruz\exe\1\ftp.ini" "AILUSR%crlf%"
FILE-APPEND: "C:\Analis\zagruz\exe\1\ftp.ini" "AIL%crlf%"
FILE-APPEND: "C:\Analis\zagruz\exe\1\ftp.ini" "cd ..%crlf%"
FILE-APPEND: "C:\Analis\zagruz\exe\1\ftp.ini" "cd mcr%crlf%"
FILE-APPEND: "C:\Analis\zagruz\exe\1\ftp.ini" "cd ibibli%crlf%"
Year@ Mon@ Day@
-1 DAY+

\\\здесь %0 esPICK% должно попадать в переменную yday2

000
\\\000 - это очистка стека, т.к. он больше не нужен
\\\в tools.spf добавил строчку
\\\: 000 BEGIN DEPTH WHILE DROP REPEAT ;

FILE-APPEND: "C:\Analis\zagruz\exe\1\ftp.ini" "get inst06%yday2% c:\analis\mmsut.txt%crlf%"
FILE-APPEND: "C:\Analis\zagruz\exe\1\ftp.ini" "bye%crlf%"
FILE-APPEND: "C:\Analis\zagruz\exe\1\ftp.ini" "quit%crlf%"
)#
LTrack
 
Posts: 5
Joined: Wed, 15 Dec 2004, 15:58

Postby Valery_Kondakoff » Thu, 16 Dec 2004, 14:32

\\\ - это не комментарий.

Code: Select all
#( ail_ftp
\ NoActive
\ создаем VALUE-переменную
0 VALUE ail_ftp_var
Time: 4 10 * * * *
Action:
FILE-WRITE: "C:\Analis\zagruz\exe\1\ftp.ini" "open 172.16.5.23%crlf%"
FILE-APPEND: "C:\Analis\zagruz\exe\1\ftp.ini" "AILUSR%crlf%"
FILE-APPEND: "C:\Analis\zagruz\exe\1\ftp.ini" "AIL%crlf%"
FILE-APPEND: "C:\Analis\zagruz\exe\1\ftp.ini" "cd ..%crlf%"
FILE-APPEND: "C:\Analis\zagruz\exe\1\ftp.ini" "cd mcr%crlf%"
FILE-APPEND: "C:\Analis\zagruz\exe\1\ftp.ini" "cd ibibli%crlf%"
Year@ Mon@ Day@
-1 DAY+
\ присваиваем значение
TO ail_ftp_var
\ удаляем два ненужных значения
2DROP
\ используем переменную
FILE-APPEND: "C:\Analis\zagruz\exe\1\ftp.ini" "get inst06%ail_ftp_var% c:\analis\mmsut.txt%crlf%"
FILE-APPEND: "C:\Analis\zagruz\exe\1\ftp.ini" "bye%crlf%"
FILE-APPEND: "C:\Analis\zagruz\exe\1\ftp.ini" "quit%crlf%"
)#
CU
VK
User avatar
Valery_Kondakoff
Site Admin
 
Posts: 769
Joined: Thu, 01 Jul 2004, 20:49
Location: Moscow, Russia

Postby LTrack » Thu, 16 Dec 2004, 17:10

Большое спасибо!!!
Все гениальное просто. А учиться на примерах намного легче!
Сколько я с esPICK промучался - а она и не нужна вовсе :-)
LTrack
 
Posts: 5
Joined: Wed, 15 Dec 2004, 15:58


Return to nnCron forum (Russian)

Who is online

Users browsing this forum: Google [Bot] and 2 guests