command line argument VS command line option VS flag

About_work·2024년 2월 3일
1

python 기초

목록 보기
29/65

커맨드 라인 인터페이스에서 커맨드 라인 인자(Command-line Arguments), 커맨드 라인 옵션(Command-line Options), 그리고 플래그(Flags)는 사용자가 프로그램을 실행할 때 터미널이나 명령 프롬프트를 통해 프로그램에게 전달하는 입력값을 의미합니다. 이 세 용어는 밀접하게 관련되어 있지만, 사용되는 맥락과 의미에 있어서 약간의 차이가 있습니다.

커맨드 라인 인자 (Command-line Arguments)

  • 정의: 커맨드 라인 인자는 프로그램을 실행할 때 프로그램명 뒤에 공백으로 구분하여 지정하는 값들입니다. 이 인자들은 프로그램 내에서 사용될 데이터를 제공하거나 프로그램의 동작을 어떻게 할지를 지정하는 데 사용될 수 있습니다.
  • 예시: python script.py arg1 arg2에서 arg1arg2script.py에 전달되는 커맨드 라인 인자입니다.

커맨드 라인 옵션 (Command-line Options)

  • 정의: 커맨드 라인 옵션은 일반적으로 하이픈(-) 또는 더블 하이픈(--)으로 시작하며, 프로그램의 특정 동작을 조절하거나 설정을 변경하는 데 사용됩니다. 옵션 뒤에는 해당 옵션과 관련된 값이 올 수 있습니다. 옵션은 선택적으로 사용할 수 있으며, 프로그램의 기본 동작을 수정합니다.
  • 예시: python script.py --option=value에서 --option=valuescript.py에 전달되는 옵션입니다. 여기서 --option은 옵션의 이름이고, value는 그 옵션에 대한 값입니다.

플래그 (Flags)

  • 정의: 플래그는 커맨드 라인 옵션의 한 유형으로, 보통 프로그램의 특정 동작을 켜거나 끄는 스위치 역할을 합니다. 플래그는 값 없이 옵션의 이름만으로 사용되며, 단순히 존재하는 것만으로도 프로그램에 어떤 동작을 지시합니다.
  • 예시: python script.py --verbose에서 --verbose는 플래그입니다. 이 플래그가 존재하면, 프로그램은 보통보다 더 자세한 정보를 출력하도록 설정됩니다.

비교

  • 공통점: 이 세 가지 모두 프로그램에 대한 사용자의 입력을 제공하는 방법입니다. 사용자는 이를 통해 프로그램의 동작을 커스터마이즈할 수 있습니다.
  • 차이점:
    • 커맨드 라인 인자는 프로그램에 전달되는 데이터나 파일 등을 지정할 때 주로 사용됩니다.
    • 커맨드 라인 옵션은 프로그램의 특정 동작을 조절하기 위해 사용되며, 대부분의 경우 선택적입니다.
    • 플래그는 커맨드 라인 옵션의 한 형태로, 주로 불리언 값(참/거짓)을 나타내며, 프로그램의 특정 기능을 켜거나 끄는 데 사용됩니다.

이러한 구분은 프로그램의 사용성과 유연성을 높이기 위해 중요하며, 사용자가 프로그램을 더 효과적으로 제어할 수 있게 해줍니다.

profile
새로운 것이 들어오면 이미 있는 것과 충돌을 시도하라.

0개의 댓글