31개의 구분된 파일 이름 chr1.txt ... chr31.txt에 대해 다음 명령을 실행하고 단 한 번의 실행으로 31개의 출력을 얻고 싶습니다.
이것은 명령입니다:
cat input.txt | sed 's/.\{5\}/& /g' > output.txt
어떤 제안이 있으십니까?
답변1
쉘이 중괄호 확장을 지원하는 경우 다음을 수행할 수 있습니다.
sed 's/.\{5\}/& /g' chr{1..31}.txt >output.txt
chr{1..31}.txt
로 확장됩니다 chr1.txt
. chr2.txt
... chr31.txt
전체 출력(모든 파일의)이 에 저장됩니다 output.txt
.
답변2
간단한 루프가 트릭을 수행합니다.
for((i=1;i<32;i++));do cat chr$i.txt | sed 's/.\{5\}/& /g' > output$i.txt; done