Bash

您可以為 bash 中的多個目標的文件創建符號連結嗎?

  • January 22, 2020

我正在尋找為一個文件(例如,/var/log/cron/cron.log)創建一個符號連結,該文件將有一個符號連結到/proc/1/fd/2/proc/1/fd/1

這可能嗎?

不,它只能指向一個目標。由於連結指向目標上的特定 inode,因此一次只能存在一個

凱文已經回答了問題的信函,我會盡力回答精神問題。如果您想同時寫入兩個文件(假設其中一個不是指向另一個的硬/符號連結),您可以使用命名管道tee命令來複製輸出:

mkfifo dup.txt
tee -a a.txt >> b.txt < dup.txt &
echo "Hello world!" >> dup.txt

"Hello world!"同時寫入a.txtb.txt。但是tee將在第一次寫入後退出。

由於在您的範例中您使用日誌文件,因此更穩定的解決方案是配置rsyslogd以將所有cron消息發送到多個文件:

cron.* -/var/log/cron/cron.log
cron.* -/var/log/another-file.log

引用自:https://serverfault.com/questions/999852