diff --git a/Userland/Utilities/dirname.cpp b/Userland/Utilities/dirname.cpp index c2481d91eb..d54e6b9a79 100644 --- a/Userland/Utilities/dirname.cpp +++ b/Userland/Utilities/dirname.cpp @@ -1,5 +1,6 @@ /* * Copyright (c) 2020, Andreas Kling + * Copyright (c) 2023, Tim Ledbetter * * SPDX-License-Identifier: BSD-2-Clause */ @@ -10,11 +11,14 @@ ErrorOr serenity_main(Main::Arguments arguments) { - DeprecatedString path = {}; + bool null_terminated = false; + DeprecatedString path; Core::ArgsParser args_parser; + args_parser.add_option(null_terminated, "End each output line with \\0, rather than \\n", "zero", 'z'); args_parser.add_positional_argument(path, "Path", "path"); args_parser.parse(arguments); - outln("{}", LexicalPath::dirname(path)); + auto const delimiter = null_terminated ? '\0' : '\n'; + out("{}{}", LexicalPath::dirname(path), delimiter); return 0; }