args[0]
program
"target/debug/minigrep"
호출된 바이너리 이름이다. 이 예제에서는 검색 입력으로 쓰지 않는다.
args[0]은 실행 파일 이름이므로 검색어와 파일 경로는 그 다음 위치에서 꺼내 변수에 연결한다.
호출된 바이너리 이름이다. 이 예제에서는 검색 입력으로 쓰지 않는다.
파일 안에서 찾을 문자열이며 다음 절에서 query 변수로 빌린다.
검색할 파일 경로이며 file_path 변수에 연결할 값이다.
let query = &args[1];
소유권을 옮기지 않고 벡터 안의 문자열을 참조한다.
let file_path = &args[2];
나중에 파일 읽기 단계에서 사용할 경로 문자열을 분리한다.
cargo run 자체가 아니라 하이픈 두 개 뒤의 값이 minigrep으로 전달된다. 따라서 벡터 위치를 확인한 뒤 필요한 두 값만 변수로 저장한다.