Jika Anda mengekspresikan perintah Anda tanpa tanda kutip tunggal, Anda bisa memasukkannya ke dalam tanda kutip tunggal dan menjalankannya melalui shell perantara.
Untuk menjalankan ini sebagai root:
echo 'clock_hctosys="YES"' >> /etc/conf.d/hwclock
Tulis perintah dengan cara berbeda yang tidak digunakan '
:
echo clock_hctosys=\"YES\" >> /etc/conf.d/hwclock
Kemudian panggil sudo sh -c …
:
sudo sh -c 'echo clock_hctosys=\"YES\" >> /etc/conf.d/hwclock'
Atau, untuk menulis output ke file yang hanya dapat ditulisi oleh root, panggil sudo tee
. Berikan -a
opsi untuk tee
menambahkan ke file tujuan, jika tidak file akan terpotong.
echo 'clock_hctosys="YES"' | sudo tee -a /etc/conf.d/hwclock >/dev/null
Untuk modifikasi file yang lebih kompleks, Anda dapat menghubungi sudo sed
, sudo ed
, sudo perl
, ...
Atau, gunakan editor yang layak dan buat panggilan sudo. Di Emacs, buka /sudo:/etc/conf.d/hwclock
. Di Vim, panggil :w !sudo tee %
untuk menulis ke file yang dibuka sebagai root, atau gunakan plugin sudo.vim . Atau pergi dari ujung sudo dan panggil sudoedit /etc/conf.d/hwclock
.
Atau Anda bisa menyerah pada sisi gelap dan menjalankan shell sebagai root.
$ sudo -i
# echo 'clock_hctosys="YES"' >> /etc/conf.d/hwclock
tee
perintah berjalan sebagai root, bukan perintah utama yang bisa rumit dan rentan terhadap perilaku buruk. (tidak demikian halnyaecho
)