Системные переменные

Обсуждение технических вопросов по продуктам Novell

Системные переменные

Сообщение Tolik Mironov » 26 июн 2008, 12:37

Подскажите возможно ли. Есть задача - каждый день
по шедулеру создавать папку с именем "ддммгггг",
где дд мм гггг соответственно текущая дата.
Работает ли toolbox с переменными типа %day% %month% ?
Посмотрел на Avanti Taskmaster - он умеет, но собака платный.
Tolik Mironov
 
Сообщения: 104
Зарегистрирован: 17 июл 2006, 14:28

Сообщение Dimerson » 26 июн 2008, 12:42

perl.nlm и bash.nlm умеют все _и еще кое-что_.
Аватара пользователя
Dimerson
 
Сообщения: 2966
Зарегистрирован: 15 сен 2002, 14:39
Откуда: Регион 70

Сообщение Tolik Mironov » 26 июн 2008, 12:55

Уточню задачу.
Надо раз в сутки копировать каталог с нетвари 4.2 на нетварь 6.0, при этом каждый день в новый каталог с именем, соответствующим текущей дате.
Tolik Mironov
 
Сообщения: 104
Зарегистрирован: 17 июл 2006, 14:28

Сообщение v13 » 26 июн 2008, 15:45

Поковырять nwzip ? он ещё и запакует.
Аватара пользователя
v13
 
Сообщения: 660
Зарегистрирован: 31 авг 2007, 09:07

Сообщение Пилютик Михаил » 26 июн 2008, 16:52

Tolik Mironov писал(а):Уточню задачу.
Надо раз в сутки копировать каталог с нетвари 4.2 на нетварь 6.0, при этом каждый день в новый каталог с именем, соответствующим текущей дате.

Я такую задачу решал таким образом: копировал в один и тот же каталог, а потом переименовываю его с помощью одного из бэйсик-скриптов:

' RENToWeek переименовывает каталог source в MM.DD
' Usage : RENToWeek source
' source - каталог для переименования (полный путь)
'**************************************************************************

Sub Main()

If ArgumentCount <> 2 Then
Print "Usage: " & Arguments(1) & " [Dir_Source]"
Exit Sub
End If

On Error Resume Next

Set DirObj = CreateObject("UCX:NWFileMgr")
Set renDir = DirObj.FindEntry(Arguments(2))
If Err.Number <> 0 Then
Print "Directory "&Arguments(2)&" not found"
Exit Sub
End If

Set CurDir = DirObj.CurrentDir

' формируем новое имя каталога: MMDD
SMM = CStr(Month(now))
If Len(SMM) = 1 Then
SMM = "0" & SMM
End If
SDD = CStr(Day(now))
If Len(SDD) = 1 Then
SDD = "0" & SDD
End If

SDir_Dest = SMM & "." & SDD

' сформируем полное новое имя (путь плюс SDir_Dest)
I =InStrRev(Arguments(2), DirObj.Parse(Arguments(2)).Name,-1,1)
SDir_dest = left(Arguments(2), I-1) & SDir_dest

renDir.Name = SDir_Dest
If Err.Number <> 0 Then
Print "Rename failed"
Exit Sub
End If

End Sub

--------------------------------------------

' RENToDay переименовывает каталог source в D(номер дня недели: 0-вск., 1-пон...)
' Usage : RENToDay source
' source - каталог для переименования (полный путь)
'**************************************************************************

Sub Main()

If ArgumentCount <> 2 Then
Print "Usage: " & Arguments(1) & " [Dir_Source]"
Exit Sub
End If

On Error Resume Next

Set DirObj = CreateObject("UCX:NWFileMgr")
Set renDir = DirObj.FindEntry(Arguments(2))
If Err.Number <> 0 Then
Print "Directory "&Arguments(2)&" not found"
Exit Sub
End If
print "Каталог &renDir.Name"

Set CurDir = DirObj.CurrentDir

' новое имя: номер дня недели(0 - воскр., 1 - пон....)
Dir_Dest = WeekDay(now, vbSunday) - 1
SDir_Dest = CStr(Dir_Dest)

' сформируем полное новое имя (путь плюс SDir_Dest)
I =InStrRev(Arguments(2), DirObj.Parse(Arguments(2)).Name,-1,1)
SDir_dest = left(Arguments(2), I-1) & SDir_dest

renDir.Name = SDir_Dest
If Err.Number <> 0 Then
Print "Rename failed"
Exit Sub
End If
print "переименован в &renDir.Name"

End Sub


Просьба сильно не смеяться по-поводу данных скриптов, мое соприкосновение с бэйсиком началось и закончилось данными скриптами.
Пилютик Михаил
 

Сообщение Tolik Mironov » 26 июн 2008, 18:41

Как их запускать то, скрипты? Вообще никогда не сталкивался.
Tolik Mironov
 
Сообщения: 104
Зарегистрирован: 17 июл 2006, 14:28

Сообщение Пилютик Михаил » 26 июн 2008, 18:50

Tolik Mironov писал(а):Как их запускать то, скрипты? Вообще никогда не сталкивался.


например, nsn RenToWeek.bas backup:fullcopy

но думаю лучше сначала почитать о бэйсике Netware. А то у NetWare 6.5, там он по-моему ставиться при инсталляции сервера, у вас 6.0....
Пилютик Михаил
 


Вернуться в Novell

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 19