Files

我如何“關注並關注”文件?

  • January 20, 2022

正在按順序下載文件wget

如果我用 開始解包cat myfile.tar.bz2 | tar -xj,它可能會正確解包或因“意外 EOF”而失敗,具體取決於更快的方法。

如何“cat and follow”一個文件,即將文件的內容輸出到stdout,但不要在EOF上退出,而是繼續訂閱該文件並繼續輸出數據的新部分,只有當文件被關閉時才退出writer 並且在 N 秒內未重新打開。


我根據@arielCo 的回答創建了一個腳本cat_and_follow,它也終止了當文件不再被打開以進行寫入時。tail

tail +1f file

我在 Ubuntu 上使用 LibreOffice 原始碼壓縮包對其進行了測試,同時wget下載它:

tail +1f libreoffice-4.2.5.2.tar.xz | tar -tvJf -

它也適用於我的 Android 手機中的 Solaris 10、RHEL3、AIX 5 和 Busybox 1.22.1(tail +1 -f file與 Busybox 一起使用)。

問題是cat不知道該文件仍在附加中。一旦cat遇到文件的(目前)結尾,它就會退出。

wget為了避免這種情況,您必須寫入管道(或 FIFO)。

wget -O - http://... | tar -xjf -

引用自:https://unix.stackexchange.com/questions/139866