답변:
간단한 작업이 수행됩니다.
for i in ./*.txt; do echo 'cat' >> "$i"; done;
이것은 현재 디렉토리에있는 모든 txt 파일의 목록을 가져 와서 전체를 반복하며 그 echo안에 들어갑니다 (내용에 추가). 으로 변경 >>하여 >cat로 파일 내용을 덮어 쓸 수 있습니다 .
tee스트림을 여러 파일로 리디렉션하는 데 사용할 수도 있습니다.
덧붙이려면 :
echo "cat" | tee -a *.txt
덮어 쓰려면 :
echo "cat" | tee *.txt
ambiguous redirect
파일이 비어 있지 sed않으면 반복없이 사용할 수 있습니다 . cat처음에 추가하려면 :
sed 'i\cat' *.txt
끝에 추가하려면 다음을 수행하십시오.
sed 'a\cat' *.txt
두 번째 줄 다음에 추가하려면 :
sed '2 a\cat' *.txt
앞에 줄을 추가하려면 다음을 수행하십시오 foo.
sed '/foo/ i\cat' *.txt
빈 파일에서는 작동하지 않습니다. 버그의 종류.
(테스트 후 파일에 실제로 쓰려면 -i옵션 이 필요합니다 . sed -i 'a\cat' *.txt)
sed는 나의 잼이다;)
'i\cat'슬래시 대신 백 슬래시를 사용합니까?
'icat'수도 i cat있습니다. 백 슬래시는 내가 믿는 전통적인 것입니다.
파이썬 접근법 :
#!/usr/bin/env python
import sys
for i in sys.argv[1:]:
with open(i,'w') as fd:
fd.write("cat\n")
sys명령 줄 인수를 반복하는 모듈을사용법은 현재 작업 디렉토리의 ./add_cat.py *.txt모든 .txt파일에서 작동하는 as 입니다. 여기에는 "cat"을 하드 코딩하는 대신 명령 줄 인수 # 1을 문자열로 사용하는 것이 포함될 수 있습니다.
echo "cat" >> *.txt입니까?