import sys def remove_spaces_outside_quotes(s): result = [] inside_quotes = False i = 0 while i < len(s): c = s[i] if c == '"': # Check if this quote is escaped escaped = False backslash_count = 0 j = i - 1 while j >= 0 and s[j] == '\\': backslash_count += 1 j -= 1 escaped = (backslash_count % 2 == 1) if not escaped: inside_quotes = not inside_quotes result.append(c) elif c == ' ' and not inside_quotes: # skip spaces outside quotes pass else: result.append(c) i += 1 return ''.join(result) if __name__ == "__main__": if len(sys.argv) < 2: print(f"Usage: {sys.argv[0]} filename") sys.exit(1) filename = sys.argv[1] with open(filename, "r") as f: for line in f: line = line.rstrip('\n') processed_line = remove_spaces_outside_quotes(line) print(processed_line)