Jawaban:
sed -e "\$aTEXTTOEND" adalah cara paling sederhana.
$cocok dengan baris terakhir (itu adalah sedalamat normal ; 4aTEXTTOENDakan disisipkan setelah baris keempat), aadalah perintah append, dan TEXTTOENDapa yang harus ditambahkan.
sed -e '$a\NEWLINE\\'. Ganti NEWLINE dengan baris baru yang sebenarnya.
Tidak perlu digunakan seddalam kasus itu. Bagaimana tentang
echo "<?php" >> file
<php " dan " >", dan mengutip konten yang dipilih sekaligus, jadi dia mungkin benar - benar ingin sebuah sedfragmen.
sudo, yang menyebabkan variasi ini gagal karena echomerupakan perintah shell built-in daripada file executable ditemukan di$PATH
echoadalah built-in tetapi juga merupakan file yang dapat dieksekusi ditemukan di$PATH
Dengan asumsi Anda ingin meletakkan tag php akhir ke file, maka
sed -i '$s/$/\n?>/' file
harus melakukan trik
Lihat posting asli Anda untuk semua perintah sed dalam satu.
find . -type f -exec sed -i -e "1s/^/<?php /" -e "\$s/\$/ ?>/" {} \;
Gunakan perintah sed 'append (a)'. Misalnya, untuk menambahkan dua baris di akhir file:
sed -i -e '$a\
foo1 bar1\
foo2 bar2' file
Dengan cara sederhana untuk menulis dan membuat perubahan pada konten pada baris tertentu dalam file. Jika Anda ingin memasukkan apa pun pada nomor baris tertentu maka perintah di bawah ini dapat digunakan:
sed -i '2i i have started' sheikh.log
di mana 2i- baris nomor 2 dan saya berdiri untuk memasukkan. Jika Anda harus memasukkan pada baris terakhir kemudian gunakan $di tempat 2. Saya sudah mulai - teks yang akan dimasukkan dan sheikh.logadalah nama file.
Kami juga dapat membuat perubahan di baris dengan menggunakan perintah di bawah ini
sed -i '2c we have started' sheikh.log
idiubah menjadi we.
Saya akan berasumsi bahwa siapa pun yang mencari cara memasukkan / menambahkan teks ke awal / akhir file mungkin juga perlu tahu bagaimana melakukan yang lain juga.
cal | \
gsed -E \
-e '1i\{' \
-e '1i\ "lines": [' \
-e 's/(.*)/ "\1",/' \
-e '$s/,$//' \
-e '$a\ ]' \
-e '$a\}'
Ini adalah caloutput yang disalurkan ke gnu- sed(dipanggil gsedpada macOS diinstal melalui brew.sh ) dengan diperpanjang RegEx ( -E) dan 6 "skrip" diterapkan ( -e) dan jeda baris lolos \untuk dibaca. Skrip 1 & 2 digunakan 1i\untuk "pada baris 1, masukkan". Skrip 5 & 6 digunakan $a\untuk "di baris <last>, tambahkan". Saya secara vertikal menyelaraskan output teks untuk membuat kode mewakili apa yang diharapkan dalam hasilnya. Skrip 3 & 4 melakukan pergantian (yang terakhir hanya berlaku untuk "baris <last>"). Hasilnya adalah mengonversi output perintah ke JSON yang valid.
{
"lines": [
" October 2019 ",
"Su Mo Tu We Th Fr Sa ",
" 1 2 3 4 5 ",
" 6 7 8 9 10 11 12 ",
"13 14 15 16 17 18 19 ",
"20 21 22 23 24 25 26 ",
"27 28 29 30 31 ",
" "
]
}
{ cat file; echo 'END OF FILE'; } > newFile, ini berfungsi juga berkat sh. *. (tidak sed tetapi bekerja dan sederhana)