Top

xargs 예제

Xargs는 지정된 문자열의 양쪽에서 공백을 제거하는 도구로 사용할 수도 있습니다. 단순히 xargs 명령에 문자열을 파이프하고 트리밍을 수행 할 것입니다 : 5. Xarags는 또한 찾아 재귀디렉토리를 제거 할 수 있습니다, 예를 들어 다음 명령은 다시 디렉토리 다운로드에서 DomTerm을 제거합니다. 다음 xargs 예제는 두 개의 명령을 실행합니다, 먼저 터치를 사용하여 파일을 만든 다음 ls 명령으로 파일을 나열합니다 : 이전 예제를 고려, 우리는 사용자가 /bin / 에코 명령의 각 실행을 확인하려는 경우 , 아래 와 같이 -n 옵션과 함께 -p 옵션을 사용합니다. xargs의 인수 구분 기호 처리는 기본 모드에서 xargs 프로그램을 사용하는 유일한 문제가 아닙니다. 파일 이름(예: sed, 기본 이름, 정렬 등)을 조작하는 데 자주 사용되는 대부분의 유닉스 도구는 텍스트 처리 도구입니다. 그러나 유닉스 패스 이름은 실제로 텍스트가 아닙니다. 경로 이름 /aaa/bbb/ccc를 고려합니다. /aaa 디렉터리 및 bbb 하위 디렉터리에서는 일반적으로 서로 다른 환경을 가진 다른 사용자가 만들 수 있습니다.

즉, 이러한 사용자가 다른 로캘 설정을 가질 수 있으며, 이는 aaa와 bbb가 반드시 동일한 문자 인코딩을 가질 필요가 없다는 것을 의미합니다. 예를 들어, Aaa는 UTF-8및 시프트 JIS의 bbb에 있을 수 있습니다. 따라서 유닉스 시스템의 절대 경로 이름은 단일 문자 인코딩에서 텍스트로 올바르게 처리되지 않을 수 있습니다. 텍스트인 입력에 의존하는 도구는 이러한 문자열에서 실패할 수 있습니다. 다음 예제에서는 xargs 명령의 작동 방식에 대한 기본 사항을 이해하는 데 도움이 됩니다. 그러나 이러한 개념을 이해하면 다양한 명령줄 문제를 해결하기 위해 xargs의 영리한 예제를 생각해 볼 수 있습니다. 이전 예제에서는 입력에 `Hi` 이후의 n(줄 바호)이 포함되어 있지만 에코된 출력에는 줄 바선 `n`이 포함되지 않았더라도 . 따라서 이전 예제의 출력을 단일 줄로 결합했습니다. xargs가 명령줄을 매일 사용할 때 유용한 몇 가지 방법이 있습니다. 이 문서에서는, 우리는 설명 합니다 12 초보자를 위한 실용적인 리눅스 xargs 명령 예제.

안녕하세요 루이스, 이 예제주셔서 감사합니다. “-c” 플래그는 무엇을 하는지 물어볼 수 있습니까? 감사합니다 유사한 효과를 달성하는 또 다른 방법은 시작 된 명령으로 셸을 사용하고, 예를 들어, 해당 셸의 복잡성을 처리하는 것입니다 : @Vivek, “인수 목록 마커”첫 번째 예에서 1 개의 오타가 있습니다 : -I 매개 변수 바로 후 ,이 있어야합니다 “{}”(하지 않는 한) 이, 명령실패) 이것을 체크 아웃. 예제 2에서 샘플 텍스트를 다음과 같이 `n`으로 포함하도록 샘플 텍스트를 변경했을 때 인수 목록 마커로 “{} “는 -I 선택기 다음에 첫 번째 코드 예제로 “{}”를 놓칩니다. 다음 예제에서는 -dn을 사용하면 출력의 줄 바선 구분 기호를 유지하고 입력된 것과 정확히 일치하는 출력을 표시합니다. 다음 예제에서는 표준 입력에서 읽는 인수 수가 1로 제한됩니다. xargs를 사용하는 가장 기본적인 예는 파이프를 사용하여 공백으로 구분된 여러 문자열을 xargs에 전달하고 해당 문자열을 인수로 사용하는 명령을 실행하는 것입니다. 위의 예에서는 표준 입력을 xargs에 파이핑하고 각 인수에 대해 터치 명령이 실행되어 세 개의 파일을 만듭니다. 이것은 실행하는 것과 동일합니다: Xargs는 표준 입력에서 데이터 스트림을 읽고 명령줄을 생성하고 실행하는 훌륭한 명령입니다. 즉, 명령의 출력을 받아 다른 명령의 인수로 전달할 수 있습니다.