Dan Anda dapat melakukannya menggunakan sed dalam 1 perintah tunggal juga
for f in *; do
sed -i.bak '1i\
foo-bar
' ${f}
done
Ini akan melakukan itu. Anda dapat membuatnya lebih efisien jika Anda melakukan teks yang sama untuk setiap file...
for f in *; do
echo "whatever" > tmpfile
cat $f >> tmpfile
mv tmpfile $f
done
Anda dapat melakukannya seperti ini tanpa loop dan cat
sed -i '1i whatever' *
jika Anda ingin mencadangkan file Anda, gunakan -i.bak
Atau menggunakan awk
awk 'FNR==1{$0="whatever\n"$0;}{print $0>FILENAME}' *
Bagaimana saya bisa memeriksa apakah PostgreSQL diinstal atau tidak melalui skrip Linux?
Cara mencari file menggunakan regex di skrip shell linux