fc perintah, kependekan dari f ix c ommands, adalah perintah bawaan shell yang digunakan untuk membuat daftar, mengedit, dan menjalankan kembali perintah yang paling baru dimasukkan ke dalam shell interaktif. Anda dapat mengedit perintah yang baru saja dimasukkan di editor favorit Anda dan menjalankannya tanpa harus mengetik ulang seluruh perintah. Perintah ini dapat membantu untuk memperbaiki kesalahan ejaan pada perintah yang dimasukkan sebelumnya dan menghindari pengulangan perintah yang panjang dan rumit. Karena ini adalah shell-builtin, tersedia di sebagian besar shell, termasuk Bash, Zsh, Ksh dll. Dalam tutorial singkat ini, kita akan belajar menggunakan perintah fc di Linux.
Buat daftar perintah yang baru saja dieksekusi dengan perintah fc
Jika Anda menjalankan fc -l
perintah tanpa argumen, itu akan menampilkan 16 last terakhir perintah.
$ fc -l 507 fish 508 fc -l 509 sudo netctl restart wlp9s0sktab 510 ls -l 511 pwd 512 uname -r 513 uname -ms 514 touch ostechnix.txt 515 vi ostechnix.txt 516 echo "Welcome to OSTechNix" 517 sudo apcman -Syu 518 sudo pacman -Syu 519 more ostechnix.txt 520 wc -l ostechnix.txt 521 cat ostechnix.txt 522 clear
Untuk membalik urutan perintah, gunakan -r
bendera.
$ fc -r
Anda dapat menekan nomor baris menggunakan -n
bendera.
$ fc -ln nano ~/.profile source ~/.profile source ~/.profile fc -ln fc -l sudo netctl restart wlp9s0sktab ls -l pwd uname -r uname -ms echo "Welcome to OSTechNix" sudo apcman -Syu cat ostechnix.txt wc -l ostechnix.txt more ostechnix.txt clear
Sekarang Anda tidak akan melihat nomor baris.
Untuk membuat daftar hasil mulai dari perintah tertentu, cukup gunakan nomor baris bersama dengan -l
pilihan. Misalnya, untuk menampilkan perintah mulai dari nomor baris 520 hingga saat ini, kami melakukan:
$ fc -l 520 520 ls -l 521 pwd 522 uname -r 523 uname -ms 524 echo "Welcome to OSTechNix" 525 sudo apcman -Syu 526 cat ostechnix.txt 527 wc -l ostechnix.txt 528 more ostechnix.txt 529 clear 530 fc -ln 531 fc -lfc
Untuk membuat daftar perintah dalam rentang tertentu, misalnya 520 ke 525 , lakukan:
$ fc -l 520 525 520 ls -l 521 pwd 522 uname -r 523 uname -ms 524 echo "Welcome to OSTechNix" 525 sudo apcman -Syu
Alih-alih menggunakan nomor baris, kita juga bisa menggunakan string. Misalnya, daftar perintah mulai dari pwd
perintah hingga mengirim ulang, cukup gunakan huruf awal dari perintah itu (yaitu p ) seperti di bawah ini.
$ fc -l p 521 pwd 522 uname -r 523 uname -ms 524 echo "Welcome to OSTechNix" 525 sudo apcman -Syu 526 cat ostechnix.txt 527 wc -l ostechnix.txt 528 more ostechnix.txt 529 clear 530 fc -ln 531 fc -l 532 fc -l 520 533 fc -l 520 525 534 fc -l 520 535 fc -l 522 536 fc -l l
Untuk melihat semuanya di antara pwd
untuk more
perintah, Anda dapat menggunakan:
$ fc -l p m
Atau, gunakan kombinasi huruf pertama dari perintah perintah awal dan nomor baris dari perintah akhir:
$ fc -l p 528
Atau, cukup nomor baris perintah awal dan akhir:
$ fc -l 521 528
Ketiga perintah ini akan menampilkan hasil yang sama.
Edit dan jalankan kembali perintah terakhir secara otomatis
Terkadang, Anda mungkin salah mengeja perintah sebelumnya. Dalam situasi seperti itu, Anda dapat dengan mudah mengedit kesalahan ejaan perintah menggunakan editor default dan menjalankannya tanpa harus mengetik ulang lagi.
Untuk mengedit perintah terakhir dan menjalankannya kembali, lakukan:
$ fc
Ini akan membuka perintah terakhir Anda di editor default.
Seperti yang Anda lihat pada tangkapan layar di atas, perintah terakhir saya adalah "fc -l"
. Sekarang Anda dapat membuat perubahan apa pun pada perintah dan menjalankannya kembali secara otomatis setelah Anda menyimpan dan keluar dari editor. Ini bisa berguna saat Anda menggunakan perintah atau argumen yang panjang dan rumit.
Catatan penting: Harap perhatikan bahwa ini juga dapat menjadi merusak . Misalnya, jika perintah sebelumnya adalah perintah mematikan seperti "rm -fr <some-path>"
, itu akan secara otomatis dijalankan dan Anda mungkin kehilangan data penting Anda. Jadi, Anda HARUS sangat berhati-hati saat menggunakan fc
perintah.
Ubah editor default untuk mengedit perintah
Opsi penting lainnya dari fc adalah "e"
yang digunakan untuk memilih editor yang berbeda untuk mengedit perintah. Misalnya, kita dapat menggunakan "nano"
editor untuk mengedit perintah terakhir seperti di bawah ini.
$ fc -e nano
Perintah ini akan membuka editor nano (bukan editor default) untuk mengedit perintah terakhir.
Anda mungkin merasa perlu waktu lama untuk menggunakan -e
pilihan untuk setiap perintah. Untuk menjadikan editor baru sebagai default Anda, cukup setel variabel lingkungan FCEDIT
dengan nama editor yang Anda inginkan fc untuk digunakan.
Misalnya, untuk menyetel "nano" sebagai editor default baru, edit ~/.profile
Anda atau file lingkungan:
$ vi ~/.profile
Tambahkan baris berikut:
FCEDIT=nano
Anda juga dapat menggunakan jalur lengkap editor seperti di bawah ini.
FCEDIT=/usr/local/bin/emacs
Ketik :wq
untuk menyimpan dan menutup file. Untuk memperbarui perubahan, jalankan:
$ source ~/.profile
Sekarang, Anda cukup mengetik ke "fc" untuk mengedit perintah terakhir menggunakan "nano"
editor.
Jalankan kembali perintah terakhir tanpa mengeditnya
Kami sudah tahu jika kami menjalankan "fc" tanpa argumen apa pun, itu memuat editor dengan perintah terbaru. Terkadang, Anda mungkin tidak ingin mengedit, tetapi cukup jalankan perintah terakhir. Untuk melakukannya, gunakan tanda hubung (-
) simbol di akhir seperti yang ditunjukkan di bawah ini.
$ echo "Welcome to OSTechNix" Welcome to OSTechNix $ fc -e - echo "Welcome to OSTechNix" Welcome to OSTechNix
Seperti yang Anda lihat, fc tidak mengedit perintah terakhir (yaitu echo "Selamat datang di OSTechNix") bahkan jika saya menggunakan -e
pilihan.
Harap dicatat bahwa beberapa opsi khusus untuk shell. Mereka mungkin tidak bekerja di shell lain. Misalnya, opsi berikut dapat digunakan di zsh kerang. Mereka tidak akan bekerja di shell Bash atau Ksh.
Tampilkan saat perintah dijalankan
Untuk melihat kapan perintah dijalankan, gunakan -d seperti di bawah ini.
fc -ld 1 18:41 exit 2 18:41 clear 3 18:42 fc -l 4 18:42 sudo netctl restart wlp9s0sktab 5 18:42 ls -l 6 18:42 pwd 7 18:42 uname -r 8 18:43 uname -ms 9 18:43 cat ostechnix.txt 10 18:43 echo "Welcome to OSTechNix" 11 18:43 more ostechnix.txt 12 18:43 wc -l ostechnix.txt 13 18:43 cat ostechnix.txt 14 18:43 clear 15 18:43 fc -l
Sekarang Anda melihat waktu eksekusi dari perintah yang terakhir dieksekusi.
Kami juga dapat menampilkan stempel waktu lengkap dari setiap perintah menggunakan -f
pilihan.
fc -lf 1 4/5/2018 18:41 exit 2 4/5/2018 18:41 clear 3 4/5/2018 18:42 fc -l 4 4/5/2018 18:42 sudo netctl restart wlp9s0sktab 5 4/5/2018 18:42 ls -l 6 4/5/2018 18:42 pwd 7 4/5/2018 18:42 uname -r 8 4/5/2018 18:43 uname -ms 9 4/5/2018 18:43 cat ostechnix.txt 10 4/5/2018 18:43 echo "Welcome to OSTechNix" 11 4/5/2018 18:43 more ostechnix.txt 12 4/5/2018 18:43 wc -l ostechnix.txt 13 4/5/2018 18:43 cat ostechnix.txt 14 4/5/2018 18:43 clear 15 4/5/2018 18:43 fc -l 16 4/5/2018 18:43 fc -ld
Tentu saja, orang-orang Eropa dapat menggunakan format tanggal eropa menggunakan -E
pilihan.
fc -lE 2 5.4.2018 18:41 clear 3 5.4.2018 18:42 fc -l 4 5.4.2018 18:42 sudo netctl restart wlp9s0sktab 5 5.4.2018 18:42 ls -l 6 5.4.2018 18:42 pwd 7 5.4.2018 18:42 uname -r 8 5.4.2018 18:43 uname -ms 9 5.4.2018 18:43 cat ostechnix.txt 10 5.4.2018 18:43 echo "Welcome to OSTechNix" 11 5.4.2018 18:43 more ostechnix.txt 12 5.4.2018 18:43 wc -l ostechnix.txt 13 5.4.2018 18:43 cat ostechnix.txt 14 5.4.2018 18:43 clear 15 5.4.2018 18:43 fc -l 16 5.4.2018 18:43 fc -ld 17 5.4.2018 18:49 fc -lf
TL;DR
- Saat dijalankan tanpa argumen apa pun, fc akan memuat perintah terbaru di editor teks default.
- Saat menjalankan dengan argumen numerik, fc memuat editor dengan perintah dengan nomor yang ditentukan.
- Saat menjalankan dengan argumen string, fc memuat perintah terbaru yang dimulai dengan string yang ditentukan.
- Saat menjalankan dengan dua argumen ke fc , argumen menentukan awal dan akhir rentang perintah.
Catatan: Beberapa opsi tidak digunakan lagi dalam versi BASH terbaru.
Untuk detail lebih lanjut, lihat halaman manual.
$ man fc
Bacaan terkait:
- Berbagai Cara Mengulang Perintah Terakhir Anda Di Linux
- Cara Menghapus Perintah Tertentu Dari Riwayat Bash Di Linux
- Cara Menghapus Riwayat Baris Perintah Di Linux