세 개의 디렉터리 a, b, c가 있습니다. 각 디렉터리에는 다음과 같은 디렉터리가 있습니다.old.txt
파일 내용을 복사하고 싶어요new.txt각 파일에. 내 방법은
$ cat < new.txt > {a,b,c}/old.txt
그런데 점점 더 많아지네요
bash: {a,b,c}/old.txt: ambiguous redirect
왜? 단일 명령으로 Cat 및 Brace 확장을 사용하여 이를 수행하려면 어떻게 해야 합니까?
답변1
출력을 분할하려면 명령을 읽고 모든 대상에 쓰기 위한 중간 프로세스가 필요하기 때문에 Bash는 여러 대상으로 리디렉션할 수 없습니다. (그러나 Zsh에는 이에 대한 지원이 내장되어 있습니다.)
당신은 그것을 사용할 수 있습니다tee
유용머리를 써라:
tee {a,b,c}/old.txt < new.txt > /dev/null