Pernahkah Anda tanpa sadar menjalankan perintah dengan salah ketik di dalamnya? Nah, Anda cukup menekan panah ATAS/BAWAH untuk membuka riwayat perintah, menemukan perintah yang salah eja, dan mengedit kesalahan ketik, dan akhirnya menjalankannya kembali. Inilah yang biasanya dilakukan kebanyakan dari kita! Namun, ada juga cara lain untuk memperbaiki kesalahan ketik pada perintah yang dimasukkan sebelumnya. Dalam tutorial ini, kita akan melihat semua cara yang mungkin untuk memperbaiki kesalahan pada perintah konsol sebelumnya di Linux dan Unix.
Penafian:
Artikel ini berisi NSFW (Tidak Aman Untuk Bekerja), dan kata yang tidak biasa di beberapa tempat. Meskipun saya sedikit menutupi kata itu, saya tidak bisa menghindarinya sama sekali. Karena tidak ada cara untuk mengecualikan kata itu, terimalah permintaan maaf saya sebelumnya jika posting ini membuat Anda tidak nyaman dan jika saya menyinggung Anda dengan cara apa pun.
1. Perbaiki kesalahan pada perintah konsol sebelumnya menggunakan aplikasi 'thef*ck'
Utilitas Thef*ck digunakan untuk memperbaiki kesalahan dan kesalahan ketik pada perintah yang dijalankan sebelumnya di Linux.
Apakah Anda menjalankan perintah dengan salah ketik terburu-buru? Apakah Anda lupa menambahkan sudo
dalam sebuah perintah? Tidak masalah! Aplikasi ini akan secara otomatis menampilkan perintah yang dikoreksi untuk perintah yang dieksekusi sebelumnya!!
Anda dapat memilih perintah yang benar dan tekan ENTER untuk menjalankannya. Tidak perlu menelusuri riwayat perintah untuk mengoreksi kesalahan ketik secara manual dalam suatu perintah!
Pengembang aplikasi ini mengambil inspirasi dari tweet dan membuat aplikasi keren ini. Itu ditulis dalam bahasa Python. Ini adalah aplikasi opensource dan kodenya tersedia untuk umum di GitHub.
1.1. Pemasangan
Kita dapat menginstalnya menggunakan PiP manajer paket atau manajer paket default distribusi.
Pastikan Anda telah menginstal PiP .
Setelah menginstal PiP, jalankan perintah berikut untuk menginstalnya seperti di bawah ini:
$ pip3 install --user thefuck
Ini akan menginstal versi terbaru yang tersedia.
Ini juga dikemas untuk banyak distribusi Linux dan Unix, sehingga Anda dapat menginstalnya menggunakan manajer paket default distribusi Anda. Lihat halaman GitHub proyek (diberikan di akhir) untuk mengetahui cara menginstalnya menggunakan manajer paket OS.
1.2. Konfigurasi
Disarankan untuk menambahkan baris berikut di .bash_profile
Anda , .bashrc
, .zshrc
atau skrip startup lainnya.
$ nano ~/.bashrc
Tambahkan baris berikut:
eval $(thefuck --alias fixthis)
Di sini, saya menggunakan 'fixthis' sebagai alias. Anda dapat menggunakan apa pun yang Anda inginkan sebagai alias.
Tekan Ctrl+o
dan ENTER untuk menyimpan file dan Ctrl+x
untuk menutupnya.
Jalankan perintah berikut untuk memperbarui perubahan:
$ source ~/.bashrc
1.3. Penggunaan
'fixthis' bekerja berdasarkan seperangkat aturan bawaan. Daftar lengkap aturan yang diaktifkan dapat ditemukan di sini. Anda juga dapat membuat aturan sendiri.
Saat menjalankan perintah yang salah ketik, Ini akan mencoba mencocokkan perintah sebelumnya dengan aturan. Jika kecocokan ditemukan, perintah baru dibuat menggunakan aturan yang cocok dan dieksekusi.
Mari kita lihat beberapa contoh.
Saya akan memperbarui sistem Manjaro saya menggunakan perintah berikut sebagai pengguna biasa:
$ pacman -Syu
Contoh keluaran:
error: you cannot perform this operation unless you are root.
Seperti yang Anda lihat, perintah di atas menampilkan kesalahan izin. Karena, saya tidak menambahkan sudo
di depan perintah.
Tidak perlu menambahkan sudo
dan jalankan kembali perintah. Yang harus Anda lakukan hanyalah menjalankan perintah 'fixthis' seperti di bawah ini:
$ fixthis
Sekarang, itu akan mencantumkan saran perintah yang valid untuk perintah yang dieksekusi sebelumnya.
Jika itu yang ingin Anda jalankan, cukup tekan ENTER untuk menjalankannya. Jika tidak, tekan panah ATAS/BAWAH untuk menampilkan perintah lain yang disarankan.
Dalam kasus saya, saya menggunakan yang pertama, yang merupakan perintah yang benar, seperti yang ditunjukkan pada output di bawah ini.
sudo pacman -Syu [enter/↑/↓/ctrl+c]
Lihat? Jika perintah sebelumnya gagal karena kesalahan izin, aplikasi 'fixthis' akan menambahkan perintah dengan sudo
dan jalankan lagi. Keren, kan? Untuk membatalkan menjalankan perintah, tekan ctrl+c .
Demikian pula, jika Anda menjalankan perintah yang salah eja, itu akan memperbaiki kesalahan ejaan dan menjalankan perintah lagi.
$ pithon
Contoh keluaran:
bash: pithon: command not found
$ fixthis python3 [enter/↑/↓/ctrl+c]
Jika Anda ingin memperbaiki perintah secara rekursif hingga berhasil, Anda dapat menggunakan -r
pilihan:
$ fixthis -r
Lihat screencast resmi di bawah ini yang dibuat oleh pengembangnya untuk contoh lebih lanjut.
Meskipun sangat berguna untuk memperbaiki kesalahan ketik dengan cepat, dan kesalahan pada perintah Linux, aplikasi ini memiliki nama yang sensitif dan tidak pantas, jadi Anda mungkin tidak ingin menggunakannya dalam beberapa situasi.
Jika Anda merasa tidak nyaman saat menjalankan perintah ini dalam situasi seperti itu, Anda cukup membuat alias (Misalnya, tolong, perbaiki ini) seperti yang ditunjukkan pada bagian "Konfigurasi" di atas.
2. Perbaiki kesalahan dalam perintah menggunakan Fix
Perbaikan adalah utilitas keren lainnya yang membantu kita memperbaiki kesalahan atau kesalahan ketik dengan cepat dalam suatu perintah. Meskipun Fix melakukan hal yang sama dengan thef*ck, namun sedikit berbeda.
Thef*ck kuat pada sintaks sedangkan Fix lebih baik ketika aspek semantik penting. Thef*ck tidak dapat memberi tahu Anda paket apa yang harus diinstal saat menjalankan skrip tidak berfungsi.
Utilitas Perbaiki dimaksudkan untuk digunakan ketika Anda tidak tahu cara memperbaikinya sendiri. Ini menyarankan beberapa solusi untuk perintah yang salah ketik atau salah eja.
Ini menggunakan Codex AI OpenAI untuk menyarankan semua solusi yang mungkin untuk memperbaiki kesalahan dalam perintah. Yang perlu Anda lakukan hanyalah menambahkan perintah dengan 'fix', dan AI akan menyarankan solusi yang optimal.
2.1. Instal Perbaikan di Linux
Menginstal Fix itu mudah!
1. Pertama, Anda perlu mendapatkan akses ke Codex API OpenAI .
2. Dan git clone repositori:
$ git clone https://github.com/tom-doerr/fix.git
Ini akan mengkloning konten repositori github proyek di folder lokal bernama 'fix
'.
3. cd ke direktori 'fix':
$ cd fix
4. Tambahkan main.py
ke $PATH Anda:
$ cp $PWD/main.py ~/.local/bin/fix
2.2. Penggunaan
Untuk memperbaiki perintah yang salah ketik, cukup tambahkan 'fix' di depan perintah seperti di bawah ini:
$ fix mkdir abc/def
Untuk memperbaiki perintah terakhir, cukup lakukan:
$ fix !!
AI menghasilkan sebagian besar solusi yang salah, tetapi cukup banyak solusi yang dihasilkan yang benar-benar berfungsi agar berguna.
Berikut adalah demo visual dari aplikasi Fix.
Bacaan yang disarankan:
- Berbagai Cara Mengulang Perintah Terakhir Anda Di Linux
3. Perbaiki perintah Bash yang salah eja dengan simbol Caret
Trik ini hanya akan bekerja pada BASH.
Trik ini sangat sederhana. Kami cukup mengganti kata yang salah ketik dengan kata yang benar menggunakan Cart (^ ) simbol.
Katakanlah Anda ingin membuat direktori dengan 'mkdir
' memerintah. Tapi, Anda melewatkan 'i
' dalam perintah dan masukkan 'mkdr
' sebagai gantinya seperti di bawah ini.
$ mkdr ostechnix bash: mkdr: command not found
Untuk memperbaiki kesalahan ketik pada perintah di atas, kita cukup mengganti 'dr
' dengan 'dir
' dengan simbol Caret seperti di bawah ini:
$ ^dr^dir^
Sekarang Bash akan menafsirkan ini sebagai 'mkdir
' dan jalankan dan tampilkan output seperti yang ditunjukkan di bawah ini.
mkdir ostechnix
4. Perbaiki kesalahan ketik saat menggunakan perintah cd
Saya sering mencoba mengetik cepat di konsol dan berakhir dengan kesalahan ketik ketika cd
ke dalam sebuah direktori.
$ cd Pctures bash: cd: Pctures: No such file or directory
Saya akan melewatkan satu atau dua kata saat mengetik nama direktori. Jika Anda seperti saya, berikut adalah cara memperbaiki kesalahan ketik secara otomatis saat menggunakan cd
perintah.
Untuk memperbaiki gangguan ini, edit ~/.bashrc
berkas:
$ nano ~/.bashrc
Tambahkan baris berikut di akhir:
shopt -s cdspell
Tekan Ctrl+o
dan ENTER untuk menyimpan file dan Ctrl+x
untuk menutupnya.
Jalankan perintah berikut untuk memperbarui perubahan:
$ source ~/.bashrc
Mulai sekarang, shell Anda secara otomatis mengenali jalur direktori yang benar meskipun ada kesalahan ketik.
Trik ini memiliki beberapa kelemahan. Kasus dan ketertiban itu penting.
Misalnya, jika Anda menggunakan 'gambar' bukannya 'Gambar' , itu tidak akan mengenali jalan. Di sini, saya menggunakan huruf kecil 'p' untuk direktori 'Gambar' .
$ cd pctures bash: cd: pctures: No such file or directory
Juga jika Anda menggunakan 'Pctrues' bukannya 'Gambar' , itu tetap tidak akan mengenali jalur direktori meskipun Anda menggunakan huruf besar/kecil yang benar dan mengeluh bahwa tidak ada file atau direktori seperti itu.
$ cd Pctrues bash: cd: Pctrues: No such file or directory
Di sini, saya telah mengubah urutan huruf dari direktori 'Gambar'.
Juga, jika ada lebih dari satu huruf yang hilang di jalur direktori, itu tidak akan berfungsi dengan baik.
Harap dicatat bahwa tip ini hanya untuk 'cd
' memerintah. Juga, tip ini hanya untuk Bash. Di Fish dan Zsh, fitur ini sudah ada di dalamnya.
Bonus - Sarankan penginstalan paket saat menjalankan perintah yang hilang
Anda seharusnya memperhatikan bahwa ketika Anda menjalankan perintah yang tidak tersedia, Anda akan mendapatkan pesan kesalahan seperti di bawah ini:
bash: ....: command not found
Jika Anda tahu paket mana yang menyediakan perintah yang hilang, Anda cukup menginstal paket itu dan menjalankan kembali perintah tersebut. Namun jika Anda tidak mengetahuinya, Anda mungkin memerlukan sedikit bantuan.
Untuk mengurangi masalah ini, ada paket yang disebut 'command-not-found '. Ini akan menyarankan daftar paket yang akan diinstal untuk menggunakan perintah yang tidak tersedia.
Ini akan secara otomatis mencari repositori resmi, ketika memasukkan perintah yang tidak dikenal atau tidak tersedia. Untuk detailnya, lihat tautan berikut.
- Sarankan Pemasangan Paket Saat Menjalankan Perintah yang Tidak Tersedia
Kesimpulan
Ini dia! Ini adalah beberapa cara untuk menangani kesalahan ketik dan kesalahan baris perintah di sistem Linux dan Unix. Anda dapat memilih salah satu yang cocok untuk Anda atau menggunakan kombinasi dari dua atau lebih. Misalnya, saya menggunakan 'Fix' dan 'thef*ck' dari waktu ke waktu untuk memperbaiki kesalahan dan kesalahan ketik pada perintah konsol.