diff --git a/DATFromDir/DATFromDir.cs b/DATFromDir/DATFromDir.cs
index b75bf14b..dadb3c08 100644
--- a/DATFromDir/DATFromDir.cs
+++ b/DATFromDir/DATFromDir.cs
@@ -67,7 +67,11 @@ namespace SabreTools
/// String array representing command line parameters
public static void Main(string[] args)
{
- Console.Clear();
+ // If output is being redirected, don't allow clear screens
+ if (!Console.IsOutputRedirected)
+ {
+ Console.Clear();
+ }
// Credits take precidence over all
if ((new List(args)).Contains("--credits"))
diff --git a/DATabase/DATabase.cs b/DATabase/DATabase.cs
index b992b5f1..9dbdd9a7 100644
--- a/DATabase/DATabase.cs
+++ b/DATabase/DATabase.cs
@@ -43,7 +43,12 @@ namespace SabreTools
// Perform initial setup and verification
_logger = new Logger(true, "database.log");
_logger.Start();
- Console.Clear();
+
+ // If output is being redirected, don't allow clear screens
+ if (!Console.IsOutputRedirected)
+ {
+ Console.Clear();
+ }
Setup();
// Credits take precidence over all
@@ -536,6 +541,9 @@ namespace SabreTools
InitStats(inputs, single);
}
+ // If nothing is set, show the help
+ Build.Help();
+
_logger.Close();
return;
}
diff --git a/Deheader/Headerer.cs b/Deheader/Headerer.cs
index 24058430..ef7fb6eb 100644
--- a/Deheader/Headerer.cs
+++ b/Deheader/Headerer.cs
@@ -25,8 +25,13 @@ namespace SabreTools
/// String array representing command line parameters
static void Main(string[] args)
{
+ // If output is being redirected, don't allow clear screens
+ if (!Console.IsOutputRedirected)
+ {
+ Console.Clear();
+ }
+
// Perform initial setup and verification
- Console.Clear();
logger = new Logger(true, "headerer.log");
logger.Start();
DBTools.EnsureDatabase(_dbName, _connectionString);
diff --git a/Filter/Filter.cs b/Filter/Filter.cs
index 5d4426fb..9e749881 100644
--- a/Filter/Filter.cs
+++ b/Filter/Filter.cs
@@ -2,8 +2,6 @@
using System.Collections.Generic;
using System.IO;
using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
using SabreTools.Helper;
@@ -66,7 +64,11 @@ namespace SabreTools
/// String array representing command line parameters
public static void Main(string[] args)
{
- Console.Clear();
+ // If output is being redirected, don't allow clear screens
+ if (!Console.IsOutputRedirected)
+ {
+ Console.Clear();
+ }
// Credits take precidence over all
if ((new List(args)).Contains("--credits"))
diff --git a/OfflineMerge/OfflineMerge.cs b/OfflineMerge/OfflineMerge.cs
index bdec75fe..c862d2bd 100644
--- a/OfflineMerge/OfflineMerge.cs
+++ b/OfflineMerge/OfflineMerge.cs
@@ -2,8 +2,6 @@
using System.Collections.Generic;
using System.IO;
using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
using SabreTools.Helper;
@@ -40,7 +38,12 @@ namespace SabreTools
// Perform initial setup and verification
Logger logger = new Logger(true, "offlinemerge.log");
logger.Start();
- Console.Clear();
+
+ // If output is being redirected, don't allow clear screens
+ if (!Console.IsOutputRedirected)
+ {
+ Console.Clear();
+ }
// Credits take precidence over all
if ((new List(args)).Contains("--credits"))