왜 ls -1 |xargs -i {} eCho -n {} {} {}이 올바른 순서로 인쇄되지 않습니까?
문제
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
. 제휴하지 않습니다 StackOverflow