!Date Variables
[Server Variables] have additional variables that can be used in a CrushTask depending on the situation as well.\\
\\
Date variables can be used to reference the current file item's date/time. Ubiquitous, an be used in any context (user events, alerts, various email templates,jobs).\\
{{{
{MM} month number
{MMM} month abbreviated
{MMMM} month full
{dd} day
{yy} or {yyyy} year
{HH} 24 hour
{mm} minute
{hh} 12 hour
{aa} AM or PM
{ss} seconds
{S} milliseconds
{EEE} weekday abbreviated
{EEEE} weekday full
{W} week number in the current month
{w} week number in the current year
{u} day number of the week
{D}or {DD} day number in the current year
{F} day of week in month
{z} general timezone
{Z} RFC 822 time zone
{J} julian date
{millis} millisecond time

{yesterday} millisecond time of yesterday (no variations)
{tomorrow} millisecond time of tomorrow (no variations)
{time} or {now} millisecond time of now (no variations)
}}}

!Variations
A leading '.' indicates now.  {.MM}{.dd}{.yyyy}\\
A leading '!' indicates yesterday.  {!MM}{!dd}{!yyyy}\\
A leading '!!' indicates last week.  {!!MM}{!!dd}{!!yyyy}\\
A leading '!!!' indicates last month.  {!!!MM}{!!!dd}{!!!yyyy}\\
A trailing '!' indicates tomorrow.  {MM!}{dd!}{yyyy!}\\
A trailing '!!' indicates next week.  {MM!!}{dd!!}{yyyy!!}\\
A trailing '!!!' indicates next month.  {MM!!!}{dd!!!}{yyyy!!!}\\
A trailing '_' indicates the file start transfer time (for events). {MM_}{dd_}{yyyy_} {HH_}{mm_}{ss_}{S_}\\
A leading '_' indicates the file end transfer time (for events).  {_MM}{_dd}{_yyyy} {_HH}{_mm}{_ss}{_S}\\
A leading '-' indicates the modified date and time of the file {-MM}{-dd}{-yyyy} {-HH}{-mm}{-ss}{-S}\\

\\
To add days or remove days from the time, you can use {dateadd:X}.  Example to add 5 days:{dateadd:5}{.MM}{.dd}{.yyyy}\\
\\
''(future date/times such as tomorrow, next week, next month start with CrushFTP 10.0.0_32+)''
\\
----
CrushTask / Jobs can reference their schedule name with {scheduleName}\\
{task_error} is the most recent task's error.\\
{task_errors} are all the task errors accumulated so far.\\
{task_error_names} are the names of all the tasks that had errors so far.\\
{last_error} is the last task error encountered, if any.\\
{name} is the filename of the item and {stem} is the filename without extension and {ext} is just the extension.\\
{path} is the path including the filename of the item.  {parent_path} is the path without the filename.\\
{real_path} is the actual OS notation for a file:// item using backslashes on windows, etc. and {real_parent_path} is the same without filename.\\
{url} is the URL referencing the item.\\
\\
----
Custom variables (defined with the UserVariable task)\\
\\
Variables starts with "GLOBAL_" are stored in jvm system properties it lives till the current  jvm running.\\
Variables starts with "PERSIST_" are stored in xml file at CrushFTP install folder it will be stored until the xml file is there.\\
\\
----
{thread_dump} - Create thread dump list to debug the server.\\
----