Skopiuj stderr i stdout do pliku, a także ekran w ksh
Szukam rozwiązania (podobnego do poniższego kodu bash), aby skopiować stdout i stderr do pliku oprócz ekranu w ksh na Solarisie.
Poniższy kod działa świetnie w powłoce bash:
#!/usr/bin/bash
# Clear the logfile
>logfile.txt
# Redirect all script output to a logfile as well as their normal locations
exec > >(tee -a logfile.txt)
exec 2> >(tee -a logfile.txt >&2)
date
ls -l /non-existent/path
Z jakiegoś powodu powoduje to błąd składniowy w systemie Solaris. Zakładam, że dlatego, że nie mogę zastąpić procesu i widziałem kilka postów sugerujących użyciemkfifo
, ale jeszcze nie wymyśliłem działającego rozwiązania.
Czy ktoś wie, w jaki sposób wszystkie dane wyjściowe mogą być przekierowane do pliku oprócz domyślnych lokalizacji?