프로그램을 커맨드라인(명령 프롬프트나 터미널)을 통해 실행할 때, 프로그램 이름 뒤에 공백으로 구분하여 추가하는 입력 값들
python script.py arg1 arg2
에서, arg1, arg2import sys
# 커맨드라인 인자 출력
print("Program name:", sys.argv[0])
for i, arg in enumerate(sys.argv[1:], start=1):
print(f"Argument {i}: {arg}")
example.py
-
) 또는 더블 하이픈(--
)으로 시작하는 짧은 옵션 문자나 긴 옵션 문자열로 구성-v
같은)와 긴 형태(--version
같은)로 제공합니다. 짧은 형태는 보통 하이픈 하나로 시작하고 한 글자이며, 긴 형태는 하이픈 두 개로 시작하고 여러 글자입니다.--output=filename.txt
또는 -o filename.txt
).grep
명령어를 사용하여 파일에서 텍스트를 검색할 때 다양한 옵션을 사용할 수 있습니다:
-i
옵션은 대소문자를 구분하지 않고 검색하라는 의미입니다.-v
옵션은 지정된 패턴을 포함하지 않는 모든 줄을 출력하라는 의미입니다.-n
옵션은 각 일치하는 줄 앞에 줄 번호를 출력하라는 의미입니다.grep -i "example" filename.txt
filename.txt
파일에서 대소문자를 구분하지 않고 "example" 텍스트를 검색합니다.from absl import app, flags
# 플래그 정의
flags.DEFINE_string('name', None, 'Your name')
flags.DEFINE_integer('age', None, 'Your age')
flags.DEFINE_boolean('debug', False, 'Produces debugging output')
FLAGS = flags.FLAGS
def main(argv):
del argv # 명령줄 인자를 직접 처리할 필요가 없을 때 사용합니다.
if FLAGS.debug:
print("Debugging mode on")
print(f"Name: {FLAGS.name}")
print(f"Age: {FLAGS.age}")
if __name__ == '__main__':
app.run(main) # absl은 내부적으로 sys.argv를 파싱하여 정의된 플래그들을 처리
python example.py --name="John Doe" --age=30 --debug