$stdoutmevcut standart çıktıyı temsil eden global bir değişkendir . standart çıktıyı temsil eden STDOUTbir sabittir ve tipik olarak varsayılan değerdir$stdout .
Sabit STDOUTolmakla, onu yeniden tanımlamamalısınız, ancak $stdouthatalar / uyarılar olmadan yeniden tanımlayabilirsiniz (yeniden tanımlama STDOUTbir uyarı doğuracaktır). örneğin şunları yapabilirsiniz:
$stdout = STDERR
Aynı şey için de geçerli $stderrveSTDERR
Bu nedenle, sorunuzun diğer bölümünü yanıtlamak için, çıktıyı yönlendirmek için sabitleri değil global değişkenleri kullanın. Kodunuzda daha sonra değiştirmeye dikkat edin, global değişkenleri yeniden tanımlamak uygulamanızın diğer bölümlerini etkileyebilir.