2026년 상식닷컴 선정 식당 & 카페 리스트
최근에 오픈한 호텔을 찾는다면 살펴보세요

xargs의 입력 데이터를 파일에서 읽어오려면 어떻게 하나요?

Q: xargs 명령어에서 입력 데이터를 파일에서 읽어오려면 어떻게 하나요?

A: xargs는 표준 입력(stdin)으로부터 데이터를 받아서 인자를 만들어 명령어에 넘기는 유틸리티입니다. 파일에 있는 데이터를 xargs에 전달하려면 보통 다음 방법 중 하나를 사용합니다.

1. 입력 리다이렉션 사용하기
```bash
xargs < filename
```
이 방법은 `filename` 파일의 내용을 표준 입력으로 xargs에 전달합니다.

2. 파이프와 cat 사용하기
```bash
cat filename | xargs command
```
`cat` 명령어로 파일 내용을 출력하고 파이프로 xargs에 전달합니다. 여기서 `command`는 xargs가 인자로 넘길 실행할 명령어입니다.

3. -a 옵션 사용하기 (GNU xargs)
```bash
xargs -a filename command
```
GNU 버전의 xargs는 `-a` 옵션으로 직접 파일을 지정해 입력소스로 사용할 수 있습니다. 이때 `command`는 선택 사항이며, 지정하지 않으면 기본적으로 `echo`가 사용됩니다.

---
예시 :

파일 `list.txt`에 여러 파일명이 들어 있다고 할 때, 각 파일에 대해 `ls -l` 명령을 실행하고 싶다면:

```bash
xargs -a list.txt ls -l
```

또는

```bash
cat list.txt | xargs ls -l
```

---

추가 팁 :

- 파일 내 각 줄이 인자로 전달되도록 하려면 `-d '\n'` 옵션을 이용해 구분자를 지정할 수 있습니다. 기본적으로 공백과 줄바꿈이 구분자입니다.
- 긴 인자 목록을 나눠서 처리하려면 `-n` 옵션을 사용하세요, 예: `xargs -n 1 command` (인자 1개씩 실행).
- 입력 파일에 특수 문자나 공백이 포함되어 있을 경우 적절한 구분자와 옵션을 사용해야 예상대로 동작합니다.

---

요약하면, 파일에서 입력을 읽어 xargs로 넘기려면 `xargs -a filename`, `cat filename | xargs`, 또는 `xargs < filename` 방법을 사용하면 됩니다.
`xargs`는 표준 입력으로 받은 데이터를 인수로 사용하여 다른 명령어를 실행하는 Unix/Linux 기반의 유용한 도구입니다. 만약 입력 데이터를 파일에서 읽어오고 싶다면, `xargs`와 파일을 결합하여 사용할 수 있습니다. 입력 파일에서 데이터를 읽어와 `xargs`에 전달하는 방법은 다음과 같습니다. 방법 1: 파일 리디렉션 사용하기 가장 간단한 방법은 파일의 내용을 표준 입력으로 `xargs`에 전달하는 것입니다. 이를 위해 `<` 리디렉션을 사용할 수 있습니다. ```bash xargs [옵션] < 입력파일.txt ``` 예를 들어, `입력파일.txt` 파일에 여러 개의 인자가 있고, 이 인자를 사용하여 `echo` 명령을 실행하고 싶다면 다음과 같이 할 수 있습니다. ```bash xargs echo < 입력파일.txt ``` 방법 2: `cat` 명령과 결합하여 사용하기 `cat` 명령어를 사용하여 파일 내용을 출력하고, 그 출력 결과를 `xargs`에 전달하는 방법입니다. ```bash cat 입력파일.txt | xargs [옵션] ``` 예를 들어: ```bash cat 입력파일.txt | xargs echo ``` 방법 3: `-a` 옵션 사용하기 `xargs`는 특정 파일에서 직접 읽어오는 `-a` 옵션을 제공하기도 합니다(일부 시스템에서만 지원). 이 옵션을 사용하면 `xargs`가 파일에서 직접 입력을 읽습니다. ```bash xargs -a 입력파일.txt [명령어] ``` 예를 들어: ```bash xargs -a 입력파일.txt echo ``` 추가 예제 여러 인자를 사용하여 파일의 내용을 삭제하고자 한다면 다음과 같이 할 수 있습니다: ```bash xargs rm < 입력파일.txt ``` 이 예제에서는 `입력파일.txt`에 있는 모든 파일 이름을 수집하여, 해당 파일들을 삭제하는 데 사용합니다. 이처럼 `xargs`를 활용하면 파일에서 읽어온 데이터를 다양한 명령어에 쉽게 전달하며 유용하게 사용할 수 있습니다.
작성자: 최서진 [비회원] | 작성일자: 1년 전 2025-04-17 07:21:11
조회수: 127 | 댓글: 0 | 좋아요: 0 | 싫어요: 0
내용이 부정확하다면 싫어요를 클릭해주세요.