3

我制作了一个脚本,我将使用 Windows 调度程序调用它来备份我制作的 Ruby on Rails 应用程序。

当我在命令窗口中正常调用命令时,输出如下所示

C:\Users\admin\Desktop\app>heroku db:pull --confirm app
    Loaded Taps v0.3.23
    Auto-detected local database: postgres://db:pass@127.0.0.1/app?encoding=utf8
    Warning: Data in the database 'postgres://db:pass@127.0.0.1/app?encoding=utf8' will be overwritten and
     will not be recoverable.
    Receiving schema
    Schema:          0% |                                          | ETA:  --:--:--
    Schema:         20% |========                                  | ETA:  00:00:21
    Schema:         40% |================                          | ETA:  00:00:18
    Schema:         60% |=========================                 | ETA:  00:00:12
    Schema:         80% |=================================         | ETA:  00:00:05
    Schema:        100% |==========================================| Time: 00:00:29
    Receiving indexes
    schema_migrat:   0% |                                          | ETA:  --:--:--
    schema_migrat: 100% |==========================================| Time: 00:00:05
    users:           0% |                                          | ETA:  --:--:--
    users:          50% |=====================                     | ETA:  00:00:05
    users:         100% |==========================================| Time: 00:00:10
    Receiving data
    5 tables, 1,000 records
    table1: 100% |==========================================| Time: 00:00:00
    table2:         100% |==========================================| Time: 00:00:00
    table3: 100% |==========================================| Time: 00:00:00
    table4:      100% |==========================================| Time: 00:00:00
    table5:      100% |==========================================| Time: 00:00:01
    Resetting sequences 

这是我的.bat:

heroku db:pull --confirm app >> log.txt

如果我运行两次,这是进入文件 log.txt 的输出

Loaded Taps v0.3.23
Auto-detected local database: postgres://db:pass@127.0.0.1/webapp_development?encoding=utf8
Warning: Data in the database 'postgres://db:pass@127.0.0.1/webapp_development?encoding=utf8' will be overwritten and will not be recoverable.
Receiving schema





Receiving indexes



Receiving data
5 tables, 1,000 records
Resetting sequences

Loaded Taps v0.3.23
Auto-detected local database: postgres://db:pass@127.0.0.1/webapp_development?encoding=utf8
Warning: Data in the database 'postgres://db:pass@127.0.0.1/webapp_development?encoding=utf8' will be overwritten and will not be recoverable.
Receiving schema





Receiving indexes



Receiving data
5 tables, 1,000 records
Resetting sequences

有没有办法包含确切的控制台输出,还包括脚本运行的日期和时间?提前致谢。

更新:

Start: 19/10/2012 12:08:04.90 
                                                                               Schema:          0% |                                          | ETA:  --:--:--Schema:         20% |========                                  | ETA:  00:00:24Schema:         40% |================                          | ETA:  00:00:18Schema:         60% |=========================                 | ETA:  00:00:13Schema:         80% |=================================         | ETA:  00:00:06Schema:        100% |==========================================| ETA:  00:00:00Schema:        100% |==========================================| Time: 00:00:32
                                                                               schema_migrat:   0% |                                          | ETA:  --:--:--schema_migrat: 100% |==========================================| ETA:  00:00:00schema_migrat: 100% |==========================================| Time: 00:00:05
                                                                               users:           0% |                                          | ETA:  --:--:--users:          50% |=====================                     | ETA:  00:00:05users:         100% |==========================================| ETA:  00:00:00users:         100% |==========================================| Time: 00:00:08
                                                                               schema_migrat:   0% |                                          | ETA:  --:--:--schema_migrat:   7% |==                                        | ETA:  00:00:06schema_migrat: 100% |==========================================| Time: 00:00:00
                                                                               users:           0% |                                          | ETA:  --:--:--users:           3% |=                                         | ETA:  00:00:11users:         100% |==========================================| Time: 00:00:00
                                                                               projecttechno:   0% |                                          | ETA:  --:--:--projecttechno:   6% |==                                        | ETA:  00:00:05projecttechno: 100% |==========================================| Time: 00:00:00
                                                                               technols:        0% |                                          | ETA:  --:--:--technols:        7% |==                                        | ETA:  00:00:05technols:      100% |==========================================| Time: 00:00:00
                                                                               projects:        0% |                                          | ETA:  --:--:--projects:        1% |                                          | ETA:  00:00:54projects:      100% |==========================================| Time: 00:00:00
Loaded Taps v0.3.23
Auto-detected local database: postgres://postgres:a@127.0.0.1/webapp_development?encoding=utf8
Warning: Data in the database 'postgres://postgres:a@127.0.0.1/webapp_development?encoding=utf8' will be overwritten and will not be recoverable.
Receiving schema





Receiving indexes



Receiving data
5 tables, 1,000 records
Resetting sequences
4

1 回答 1

4

添加日期和时间很容易使用%date%%time%

您可以尝试将 stderr (2) 重定向到 stdout (&1),也许这会捕获丢失的输出。

echo Start: %date% %time% >>log.txt
heroku db:pull --confirm app >>log.txt 2>&1
echo Stop: %date% %time% >>log.txt
于 2012-10-19T10:59:51.193 回答