W powłoce systemu Unix mam plik env (plik env definiuje parametry wymagane do uruchomienia skryptu użytkownika, takie jak nazwa pliku dziennika i ścieżka, przekierowuje wyjścia i błędy do pliku dziennika, szczegóły połączenia z bazą danych itp. ), Który przekierowuje wszystkie wyjścia ( komunikaty echo ) i błędy do pliku dziennika z wykonywanego skryptu przy użyciu następującego kodu:
exec 1>>${LOG_FILE}
exec 2>>${LOG_FILE}
Plik env jest wykonywany na początku każdego skryptu. Ze względu na powyższy kod w pliku env, wszystkie wyjścia konsoli, które mogą być wyjściami użytkownika lub błędami, są bezpośrednio wyprowadzane do pliku dziennika, którego faktycznie potrzebowałem.
Ale jest kilka wybranych wyników użytkownika, które chcę, aby były wyświetlane zarówno w konsoli, jak iw pliku dziennika. Ale z powodu powyższego kodu nie jestem w stanie tego zrobić.
Wiem, że jeśli usunę powyższy kod, mogę uzyskać pożądany wynik w tym przypadku, ale będę musiał ręcznie zapisać wszystkie inne wyniki do pliku dziennika, co nie jest łatwym zadaniem.
Czy istnieje sposób, aby uzyskać dane wyjściowe zarówno w konsoli, jak i pliku dziennika bez usuwania powyższych kodów?