diff --git a/app/create_file.py b/app/create_file.py index fa56336e1..951486f8a 100644 --- a/app/create_file.py +++ b/app/create_file.py @@ -1 +1,43 @@ -# write your code here +import os +import sys +from datetime import datetime + + +def main() -> None: + args = sys.argv[1:] + current_flag = None + dirs = [] + filename = None + for arg in args: + if arg in ["-d", "-f"]: + current_flag = arg + continue + if current_flag == "-d": + dirs.append(arg) + elif current_flag == "-f": + filename = arg + + dirpath = os.path.join(*dirs) if dirs else "" + if dirpath: + os.makedirs(dirpath, exist_ok=True) + + if not filename: + return + + filepath = os.path.join(dirpath, filename) + with open(filepath, "a+") as file: + has_content = os.path.getsize(filepath) > 0 + if has_content: + file.write("\n") + + file.write(datetime.now().strftime("%Y-%m-%d %H:%M:%S\n")) + index = 0 + while True: + content = input("Enter content line: ") + if content == "stop": + break + index += 1 + file.write(f"{index} {content}\n") + + +main()