Computer >> 컴퓨터 >  >> 문제 해결 >> Linux

-b 플래그를 사용하여 백그라운드 모드에서 WGET 상태 표시

명령을 실행한 후 앰퍼샌드를 사용하여 백그라운드에서 wget을 실행할 수 있지만 일반적으로 -b 플래그와 함께 명령을 실행하는 것이 더 유용합니다. 예를 들어 데비안 CD 설치 이미지를 다운로드하고 싶다고 가정해 보겠습니다. wget -b https://cdimage.debian.org/mirror/cdimage/archive/8.7.1/i386/list-cd/debian-8.7.1-i386-CD-1.list.gz를 사용하면 프로세스가 백그라운드에서 계속되고 있음을 즉시 알 수 있습니다. 또한 wget이 실행되는 백그라운드 프로세스를 나타내는 프로세서 식별 번호도 제공합니다.

백그라운드에서 실행되는 wget 프로세스는 이와 관련하여 다른 정보를 제공하지 않지만 원할 경우 상태를 표시할 수 없다는 의미는 아닙니다. 텍스트 편집기에서 wget 로그 파일을 쉽게 열 수 있습니다. 프로그래머는 이 프로세스를 대규모 대형 철 서버에서 작동하도록 설계했습니다. 즉, 상황을 예쁘게 만들 수 있는 옵션이 없다는 의미입니다. 그러면 원하는 정보를 얻기 위해 매우 기본적인 한 단계 이상을 거칠 필요가 없습니다. 파일 하나를 여는 것만으로도 충분합니다.

wget 백그라운드 다운로드 상태 표시

다운로드 중인 리소스에 대한 주소 뒤에 wget -b를 사용했다고 가정해 보겠습니다. Debian LXDE 설치 ISO를 사용하는 동안 이론적으로는 거의 모든 온라인 리소스를 사용할 수 있습니다. wget 프로그램의 프로세스는 앰퍼샌드를 사용하여 백그라운드로 보낸 프로세스와는 달리 포그라운드로 가져올 수 없습니다. 실제로 이런 방식으로 wget을 시작한 직후 jobs 명령을 실행하면 bash 셸에 등록된 백그라운드 프로세스가 없다는 것을 알 수 있습니다. 하지만 wget 프로세스를 갑자기 중지하려면 kill 다음에 프로세스 ID를 사용할 수 있습니다. 하지만 이렇게 하면 파일이 올바르게 다운로드되지 않습니다.

다운로드한 파일을 클릭하고 그래픽 파일 관리자에서 파일 크기가 커지는 것을 볼 수 있습니다. 그러나 wget은 기본적으로 지속적으로 기록되는 로그 파일을 생성합니다. 이러한 방식으로 동일한 디렉터리에 두 개 이상의 파일을 다운로드하거나 이전 로그 파일을 남겨둔 경우에는 이러한 이름을 wget-log로 지정한 다음 숫자를 사용하기 시작합니다. 이렇게 하면 wget이 자체 로그 파일을 덮어쓰는 것을 방지할 수 있습니다. 그래픽 파일 관리자에서 이러한 파일을 두 번 클릭하여 열거나 CLI 프롬프트에서 less 또는 more 명령을 사용하여 로드할 수 있습니다. 현재 다운로드 상태는 항상 파일의 마지막 줄에 있습니다.

wget은 이러한 파일에 지속적으로 기록합니다. 즉, 관련 변경 사항을 보려면 그래픽 파일 관리자에서 해당 파일을 반복적으로 열거나 CLI 프롬프트에서 동일한 cat, less 또는 more 명령을 반복적으로 실행해야 한다는 의미입니다. 사용자 정의 로그 파일을 지정하기 위해 wget 명령을 시작할 때 -o 뒤에 파일 이름을 사용할 수 있지만 이를 수행하는 사용자는 거의 없습니다. -a 플래그 뒤에 로그 파일 이름을 사용하여 이미 가지고 있는 파일에 메시지를 추가할 수도 있습니다. 그러나 동일한 로그에 추가되는 두 개의 백그라운드 wget 프로세스를 실행하려고 시도하지 마십시오. 이는 단지 횡설수설로 로드된 파일을 제공할 수 있기 때문입니다. wget 소프트웨어는 두 프로세스 모두에서 한 줄씩 쓰기를 시도하므로 읽기 어려운 정보가 삽입됩니다.

이러한 플래그는 모두 wget으로 작업할 때 사용할 수 있는 다른 플래그와 함께 작동하지만 wget의 기본값은 항상 -v 플래그라는 점을 명심하세요. 이 플래그는 대부분의 사용자에게 익숙한 자세한 출력을 활성화합니다. 조용한 출력을 위해 -b 플래그와 -q 플래그를 결합하면 주어진 시간에 wget이 수행하는 작업과 관련하여 어둠 속에서 당신을 유지할 수 있습니다. 기술적으로 -b 및 -d 플래그를 결합할 수 있지만 이 모든 기능은 소프트웨어가 뒤에서 수행하는 작업에 대해 자세히 알려주는 디버그 수준 출력을 활성화하는 것뿐입니다. 이 추가 출력은 일반적으로 wget의 소스 코드 편집 작업을 수행하는 사람들에게만 유용하며 대다수의 사용자는 이를 완전히 피할 수 있습니다. 다운로드 스크립트 작업을 하는 프로그래머라도 이 정보는 필요하지 않으며 대부분의 경우 불필요한 혼란을 야기할 뿐입니다.

~/Downloads가 아닌 다른 디렉토리에서 wget을 사용한 경우 로그 파일도 해당 디렉토리에 저장된다는 점을 기억하세요.

저자 소개

-b 플래그를 사용하여 백그라운드 모드에서 WGET 상태 표시

케빈 애로우

Kevin Arrows는 10년 이상의 업계 경험을 보유한 경험이 풍부하고 지식이 풍부한 기술 전문가입니다. 그는 MCTS(Microsoft Certified Technology Specialist) 인증을 보유하고 있으며 최신 기술 개발에 대한 최신 정보를 얻으려는 깊은 열정을 가지고 있습니다. Kevin은 소프트웨어 개발, 사이버 보안, 클라우드 컴퓨팅과 같은 분야에서 자신의 전문 지식과 지식을 보여주면서 광범위한 기술 관련 주제에 대해 광범위하게 글을 썼습니다. 기술 분야에 대한 그의 공헌은 동료들로부터 널리 인정받고 존경받고 있으며, 복잡한 기술 개념을 명확하고 간결하게 설명하는 능력으로 높은 평가를 받고 있습니다.