目前,我有一個劇本,我想所有的輸出重定向到一個既文件和控制檯。輸出重定向到文件和控制檯
#!/bin/bash
touch /mnt/ybdata/ybvwconf.log
{
... [Do some script code here]
} 2>&1 | tee -a /mnt/ybdata/ybvwconf.log
上面,你可以看到我目前的代碼,它工作得很好。它將所有輸出打印到控制檯,並將其輸出到ybvwconf.log文件。但是,我正在尋找一種消除大括號的方法。沿線的東西:
#!/bin/bash
touch /mnt/ybdata/ybvwconf.log
exec 2>&1 | tee -a /mnt/ybdata/ybvwconf.log
... [Do some script code here]
我試過這種方法,可悲的是它不工作。我沒有收到任何錯誤,但沒有內容出現在我的日誌文件中。任何想法可能是錯誤的?
爲什麼要消除大括號? – 123
你不需要'的touch'第一 – Attie
可能的複製[重定向標準輸出複製到從bash腳本本身的日誌文件(https://stackoverflow.com/questions/3173131/redirect-copy-of-stdout-到日誌文件由內而外地-的bash腳本-本身) – DevSolar