Jawaban:
Anda dapat menambahkan baris teks ke file dengan menggunakan >>
operator:
echo "hello world" >> my_file.txt
atau dalam kasus Anda
echo "alias list='ls -cl --group-directories-first'" >> config.fish
Harap perhatikan berbagai jenis kutipan .
-i
akan memperbarui file (jika tidak hanya akan mencetak hasilnya ke stdout), $
adalah regex yang akan cocok dengan akhir file, dan a
menambahkan teks berikut ke nama file.
echo "hello world" >> my_file.txt
tidak membuat baris terakhir baru dengan HW
, tetapi menambahkannya ke string baris terakhir.
HW
@timo?
echo
yang menambahkan jeda baris (menjadikannya garis yang bertentangan dengan hanya sekelompok karakter). Anda dapat mematikan jeda baris di akhir dengan -n
.
Ada banyak metode menambahkan file tanpa membuka editor teks, terutama melalui beberapa utilitas pemrosesan teks yang tersedia di Ubuntu.
tee -a config.fish <<< "alias list='ls -cl --group-directories-first'"
awk 'BEGIN{ printf "alias list=\x27ls -cl --group-directories-first\x27\n" >> "config.fish" }'
sed -i '$a alias list='"'"'ls -cl --group-directories-first'"'" config.fish
Menambahkan ke jawaban Stefano , Anda juga dapat menggunakan cat
:
Menggunakan heredoc:
$ cat >> config.fish <<'EOF'
> alias list='ls -cl --group-directories-first'
> EOF
<<'EOF'
berarti "ambil yang berikut ini sebagai input, sampai Anda mencapai garis yang adil EOF
". Kutipan berarti mengambil input secara harfiah.
Atau memasukkan baris pada stdin:
$ cat >> config.fish
Lalu rekatkan atau ketik baris, tekan Enteruntuk pergi ke baris baru, lalu tekan Ctrl + D untuk menandai akhir.
>
maka file akan terpotong, bukan ditambahkan. untuk perintah yang lebih aman, Anda dapat menggunakan sed:sed -i '$a hello world' filename