왜 ls -1 |xargs -i {} eCho -n {} {} {}이 올바른 순서로 인쇄되지 않습니까?

StackOverflow https://stackoverflow.com//questions/11675560

  •  12-12-2019
  •  | 
  •  

문제

Ubuntu$ ls -1
.

file1 file2

Ubuntu$ ls -1 | xargs -I{} echo -n {}{}{}
.

File1File1File1File2File2File2

왜 결과를이 순서로 가져 오지 않는 이유는 무엇입니까? 파일 1File2File1File2File1Fil2

도움이 되었습니까?

해결책

xargs가 입력 된 각 단어에 대한 명령 (echo)을 실행하기 때문입니다.물론 {}는 매번 동일합니다.여러 번 반복하더라도

for를 사용하여 원하는 것을 할 수 있습니다.

ls=$(ls -1)
for i in {1..3}
do
  echo $ls
done
.

사용 예 :

$ mkdir d ; cd d
<d>$ touch file1 file2 file3
<d>$ ls=$(ls -1)
<d>$ for i in {1..3}
> do
>   echo $ls
> done
file1 file2 file3
file1 file2 file3
file1 file2 file3
.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top