宏指令
宏指令可以同步有类似目录结构的多个文件或目录。宏指令的开头和结尾都必须是
% 。除了处理时间和日期的宏指令外,还可以使用
系统变量 。
内部宏指令
宏指令 |
示例 |
格式 |
%Date% |
2016-12-31 |
[YYYY-MM-DD] |
%Time% |
112233 |
[hhmmss] |
%TimeStamp% |
2016-12-31 112233 |
[YYYY-MM-DD hhmmss] |
|
%Year% |
2016 |
%Month% |
12 |
[01–12] |
%MonthName% |
Dec |
short name |
%Day% |
31 |
[01–31] |
|
%Hour% |
11 |
[00–23] |
%Min% |
22 |
[00–59] |
%Sec% |
33 |
[00–59] |
|
%WeekDay% |
1 |
[1–7] |
%WeekDayName% |
Mon |
short name |
%Week% |
52 |
[01–52] calendar week |
系统环境变量 (Windows)
宏指令 |
示例 |
%AllUsersProfile% |
C:\ProgramData |
%AppData% |
C:\Users\Zenju\AppData\Roaming |
%ComputerName% |
Zenju-PC |
%LocalAppData% |
C:\Users\Zenju\AppData\Local |
%ProgramData% |
C:\ProgramData |
%ProgramFiles% |
C:\Program Files |
%ProgramFiles(x86)% |
C:\Program Files (x86) |
%Public% |
C:\Users\Public |
%Temp% |
C:\Windows\Temp |
%UserName% |
Zenju |
%UserProfile% |
C:\Users\Zenju |
%WinDir% |
C:\Windows |
特殊文件夹 (Windows)
宏指令 |
示例 |
%csidl_Desktop% |
C:\Users\Zenju\Desktop |
%csidl_Documents% |
C:\Users\Zenju\Documents |
%csidl_Pictures% |
C:\Users\Zenju\Pictures |
%csidl_Music% |
C:\Users\Zenju\Music |
%csidl_Videos% |
C:\Users\Zenju\Videos |
%csidl_Downloads% |
C:\Users\Zenju\Downloads |
%csidl_Favorites% |
C:\Users\Zenju\Favorites |
%csidl_Resources% |
C:\Windows\Resources |
%csidl_QuickLaunch% |
C:\Users\Zenju\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch |
%csidl_StartMenu% |
C:\Users\Zenju\AppData\Roaming\Microsoft\Windows\Start Menu |
%csidl_Programs% |
C:\Users\Zenju\AppData\Roaming\Microsoft\Windows\Start Menu\Programs |
%csidl_Startup% |
C:\Users\Zenju\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\StartUp |
%csidl_Nethood% |
C:\Users\Zenju\AppData\Roaming\Microsoft\Windows\Network Shortcuts |
%csidl_Templates% |
C:\Users\Zenju\AppData\Roaming\Microsoft\Windows\Templates |
备注: 以上大部分的系统变量会有对应的公共变量,比如
%csidl_Documents% 对应的公共变量是 %csidl_PublicDocuments%。
额外提示: 你可以调用 bat 或者 cmd 脚本添加临时环境变量来完善 ffs_batch 同步配置文件的灵活性。
示例:
FreeFileSync 配置文件
C:\SyncJob.ffs_batch 包含一个宏变量
%MyVar% ,宏变量替换了目标文件夹的绝对地址,这个配置文件可以通过 cmd 文件来调用:
set MyVar=C:\Target
"C:\Program files\FreeFileSync\FreeFileSync.exe" C:\SyncJob.ffs_batch
::在同步过程中 %MyVar% 被替换成了 C:\Target 。
备注
set 设置的临时环境变量只存在于本次 cmd 脚本调用期间。 使用 start /wait 可以让后续的程序不受临时变量影响。