宏指令
宏指令可以同步有类似目录结构的多个文件或目录。宏指令的开头和结尾都必须是
% 。除了处理时间和日期的宏指令外,还可以使用
系统变量 。
内部宏指令
| 宏指令 |
示例 |
格式 |
| %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 可以让后续的程序不受临时变量影响。