[파이썬] os 시스템 명령 실행: `os.system()`

Python is a versatile programming language that allows you to interact with your operating system and execute system commands. One such way to execute system commands is by using the os.system() function.

What is os.system()?

os.system() is a function provided by the os module in Python. It allows you to execute system commands directly from your Python code. This can be useful when you need to interact with the underlying operating system, perform administrative tasks, or automate certain processes.

How to use os.system()?

Using os.system() is quite straightforward. You simply need to provide the system command as a string parameter inside the function. Here’s an example:

import os

# Execute the 'ls' command (UNIX/Linux)
os.system('ls')

# Execute the 'dir' command (Windows)
os.system('dir')

In the above example, we import the os module and call the os.system() function twice. The first command executes the ls command, which lists the files and directories in a Unix/Linux system. The second command executes the dir command, which does the same in a Windows system.

Capturing the output

By default, os.system() simply executes the command and returns the exit status of the command. If you want to capture the output of the command, you can redirect it to a file or read it directly from the command output. Here’s how you can do it:

import os

# Execute the 'ls' command (UNIX/Linux) and capture the output
output = os.popen('ls').read()
print(output)

# Execute the 'dir' command (Windows) and capture the output
output = os.popen('dir').read()
print(output)

In the above example, we use os.popen() instead of os.system() to execute the command and capture the output. The read() function reads the output from the command and stores it in the output variable. Finally, we print the output to the console.

Conclusion

os.system() is a useful function in Python when you need to execute system commands and interact with the underlying operating system. It provides a convenient way to automate tasks, perform administrative actions, or retrieve information from the system. Just make sure to use it with caution and only execute trusted commands to maintain the security of your application.