diff --git a/applications/utilities/mesh/generation/extrude/extrudeMesh/extrudeMesh.C b/applications/utilities/mesh/generation/extrude/extrudeMesh/extrudeMesh.C
index 3fa384024651a9534951f3f9270d37b2b41d7e83..aafa48c28d8157e9c48c2178ecf1add77e77f61e 100644
--- a/applications/utilities/mesh/generation/extrude/extrudeMesh/extrudeMesh.C
+++ b/applications/utilities/mesh/generation/extrude/extrudeMesh/extrudeMesh.C
@@ -217,6 +217,7 @@ int main(int argc, char *argv[])
     );
 
     #include "addRegionOption.H"
+    argList::addOption("dict", "file", "Use alternative extrudeMeshDict");
     #include "setRootCase.H"
     #include "createTimeExtruded.H"
 
@@ -236,15 +237,19 @@ int main(int argc, char *argv[])
             << runTimeExtruded.timeName() << nl << endl;
     }
 
-
-    IOdictionary dict
+    const IOdictionary dict
     (
-        IOobject
+        IOobject::selectIO
         (
-            "extrudeMeshDict",
-            runTimeExtruded.system(),
-            runTimeExtruded,
-            IOobject::MUST_READ_IF_MODIFIED
+            IOobject
+            (
+                "extrudeMeshDict",
+                runTimeExtruded.system(),
+                runTimeExtruded,
+                IOobject::MUST_READ_IF_MODIFIED,
+                IOobject::NO_WRITE
+            ),
+            args.opt<fileName>("dict", "")
         )
     );