GNU/Linux >> Belajar Linux >  >> Linux

Kiat bash untuk sehari-hari di baris perintah

Sebagai shell default untuk banyak varian Linux dan Unix, Bash menyertakan berbagai macam fitur yang kurang digunakan, jadi sulit untuk memutuskan apa yang harus didiskusikan. Akhirnya, saya memutuskan untuk fokus pada tips Bash yang membuat aktivitas sehari-hari menjadi lebih mudah.

Sebagai konsultan, saya melihat pluralitas lingkungan dan gaya kerja yang beragam. Saya memanfaatkan pengalaman ini untuk mempersempit tip menjadi empat kategori besar:Trik terminal dan baris, navigasi dan file, riwayat, dan perintah yang berguna. Kategori-kategori ini sepenuhnya arbitrer dan lebih berfungsi untuk mengatur pemikiran saya sendiri daripada sebagai klasifikasi definitif apa pun. Banyak tip yang disertakan di sini mungkin secara subjektif cocok dengan lebih dari satu kategori.

Tanpa basa-basi lagi, berikut adalah beberapa trik Bash paling bermanfaat yang pernah saya temui.

Bekerja dengan riwayat Bash

Salah satu cara terbaik untuk meningkatkan produktivitas Anda adalah belajar menggunakan riwayat Bash dengan lebih efektif. Dengan mengingat hal itu, mungkin salah satu tweak terpenting yang dapat Anda buat di lingkungan multi-pengguna adalah mengaktifkan histappend pilihan untuk shell Anda. Untuk melakukannya, cukup jalankan perintah berikut:

shopt -s histappend  

Ini memungkinkan beberapa sesi terminal untuk menulis ke riwayat secara bersamaan. Di sebagian besar lingkungan, opsi ini tidak diaktifkan. Artinya, histori sering hilang jika Anda membuka lebih dari satu sesi Bash (baik secara lokal atau melalui SSH).

Tugas umum lainnya adalah mengulangi perintah terakhir dengan sudo . Misalnya, Anda ingin membuat direktori mkdir /etc/ansible/facts.d . Kecuali Anda root, perintah ini akan gagal. Dari apa yang saya amati, sebagian besar pengguna menekan up panah, gulir ke awal baris, dan tambahkan sudo memerintah. Ada cara yang lebih mudah. Cukup jalankan perintah seperti ini:

sudo !! 

Bash akan menjalankan sudo dan kemudian keseluruhan dari perintah sebelumnya. Berikut adalah tampilannya ketika dijalankan secara berurutan:

[user@centos ~]$ mkdir -p /etc/ansible/facts.d
mkdir:tidak dapat membuat direktori '/etc/ansible':Izin ditolak

[pengguna@ centos ~]$ sudo !!
sudo mkdir -p /etc/ansible/facts.d

Saat !! dijalankan, perintah lengkap digaungkan ke terminal sehingga Anda tahu apa yang baru saja dieksekusi.

Serupa tetapi lebih jarang digunakan adalah !* jalan pintas. Ini memberi tahu Bash bahwa Anda menginginkan semua *argumen* dari perintah sebelumnya untuk diulang dalam perintah saat ini. Ini bisa berguna untuk perintah yang memiliki banyak argumen yang ingin Anda gunakan kembali. Contoh sederhana adalah membuat banyak file dan kemudian mengubah izinnya:

[pengguna@centos tmp]$ sentuh file1 file2 file3 file4
[pengguna@centos tmp]$ chmod 777 !*
chmod 777 file1 file2 file3 file4

Ini hanya berguna dalam serangkaian keadaan tertentu, tetapi mungkin menghemat beberapa penekanan tombol.

Berbicara tentang menyimpan penekanan tombol, mari kita bicara tentang menemukan perintah dalam riwayat Anda. Sebagian besar pengguna akan melakukan hal seperti ini:

history |grep <some command> 

Namun, ada cara yang lebih mudah untuk mencari riwayat Anda. Jika Anda menekan

ctrl + r 

Bash akan melakukan pencarian terbalik dari riwayat Anda. Saat Anda mulai mengetik, hasilnya akan mulai muncul. Misalnya:

(reverse-i-search)`hist': shopt -s histappend 

Pada contoh di atas, saya mengetik hist dan cocok dengan shopt perintah yang kita bahas sebelumnya. Jika Anda terus menekan ctrl + r , Bash akan terus mencari mundur melalui semua pertandingan lainnya.

Trik terakhir kami bukanlah trik melainkan perintah bermanfaat yang dapat Anda gunakan untuk menghitung dan menampilkan perintah yang paling sering digunakan dalam riwayat Anda.

[pengguna@centos tmp]$ sejarah | awk 'BEGIN {FS="[ \t]+|\\|"} {cetak $3}' | urutkan | uniq -c | urutkan -nr | head 
81 ssh
50 sudo
46 ls
45 ping
39 cd
29 nvidia-xrun
20 nmap
19 ekspor

Dalam contoh ini, Anda dapat melihat bahwa ssh sejauh ini merupakan perintah yang paling banyak digunakan dalam sejarah saya saat ini.

Navigasi dan penamaan file

Lebih banyak sumber daya Linux

  • Lembar contekan perintah Linux
  • Lembar contekan perintah Linux tingkat lanjut
  • Kursus online gratis:Ikhtisar Teknis RHEL
  • Lembar contekan jaringan Linux
  • Lembar contekan SELinux
  • Lembar contekan perintah umum Linux
  • Apa itu container Linux?
  • Artikel Linux terbaru kami

Anda mungkin sudah tahu bahwa jika Anda mengetik perintah, nama file, atau nama folder, Anda dapat menekan tab kunci sekali untuk melengkapi kata-kata untuk Anda. Ini berfungsi jika ada satu kecocokan persis. Namun, Anda mungkin tidak tahu bahwa jika Anda menekan tab dua kali, itu akan menunjukkan kepada Anda semua kecocokan berdasarkan apa yang telah Anda ketikkan. Misalnya:

[user@centos tmp]$ cd /lib 
lib/ lib64/

Ini bisa sangat berguna untuk navigasi sistem file. Trik bermanfaat lainnya adalah mengaktifkan cdspell di cangkangmu. Anda dapat melakukannya dengan mengeluarkan shopt -s cdspell memerintah. Ini akan membantu memperbaiki kesalahan ketik Anda:

[pengguna@centos dll]$ cd /tpm
/tmp
[pengguna@centos tmp]$ cd /ect
/etc

Ini tidak sempurna, tetapi setiap sedikit membantu!

Setelah Anda berhasil mengubah direktori, bagaimana jika Anda perlu kembali ke direktori sebelumnya? Ini bukan masalah besar jika Anda tidak terlalu mendalami pohon direktori. Tetapi jika Anda berada di jalur yang cukup dalam, seperti /var/lib/flatpak/exports/share/applications/ , Anda dapat mengetik:

cd /va<tab>/lib/fla<tab>/ex<tab>/sh<tab>/app<tab> 

Untungnya, Bash mengingat direktori Anda sebelumnya, dan Anda dapat kembali ke sana hanya dengan mengetik cd - . Berikut adalah tampilannya:

[aplikasi pengguna@centos]$ pwd
/var/lib/flatpak/exports/share/aplikasi

[aplikasi pengguna@centos]$ cd /tmp
[ user@centos tmp]$ pwd
/tmp

[user@centos tmp]$ cd -
/var/lib/flatpak/exports/share/applications

Itu semua baik dan bagus, tetapi bagaimana jika Anda memiliki banyak direktori yang ingin Anda navigasikan dengan mudah? Bash telah Anda bahas di sana juga. Ada variabel yang dapat Anda atur yang akan membantu Anda bernavigasi dengan lebih efektif. Ini contohnya:

[pengguna@centos aplikasi]$ ekspor CDPATH='~:/var/log:/etc'
[pengguna@centos aplikasi]$ cd hp
/etc/hp

[user@centos hp]$ cd Downloads
/home/user/Downloads

[user@centos Downloads]$ cd ansible
/etc/ansible

[user@centos Downloads]$ cd journal
/var/log/journal

Pada contoh di atas, saya mengatur direktori home saya (ditunjukkan dengan tilde:~ ), /var/log dan /etc . Apa pun di tingkat atas direktori ini akan terisi otomatis saat Anda mereferensikannya. Direktori yang tidak berada di dasar direktori yang terdaftar di CDPATH tidak akan ditemukan. Jika, misalnya, direktori yang Anda cari adalah /etc/ansible/facts.d/ ini tidak akan selesai dengan mengetikkan cd facts.d . Ini karena sementara direktori ansible ditemukan di bawah /etc , facts.d tidak. Oleh karena itu, CDPATH berguna untuk mencapai puncak pohon yang sering Anda akses, tetapi mungkin rumit untuk dikelola saat Anda menjelajahi struktur folder yang besar.

Akhirnya, mari kita bicara tentang dua kasus penggunaan umum yang dilakukan setiap orang di beberapa titik:Mengubah ekstensi file dan mengganti nama file. Sekilas, ini mungkin terdengar seperti hal yang sama, tetapi Bash menawarkan beberapa trik berbeda untuk menyelesaikan tugas ini.

Meskipun ini mungkin merupakan operasi "turun-dan-kotor", sebagian besar pengguna pada titik tertentu perlu membuat salinan cepat dari file yang sedang mereka kerjakan. Sebagian besar akan menyalin nama file dengan tepat dan hanya menambahkan ekstensi file seperti .old atau .bak . Ada jalan pintas cepat untuk ini di Bash. Misalkan Anda memiliki nama file seperti spideroak_inotify_db.07pkh3 yang ingin Anda simpan salinannya. Anda dapat mengetik:

cp spideroak_inotify_db.07pkh3 spideroak_inotify_db.07pkh3.bak 

Anda dapat melakukan ini dengan cepat dengan menggunakan operasi salin/tempel, menggunakan tab selesai, mungkin menggunakan salah satu pintasan untuk mengulangi argumen, atau cukup mengetik semuanya. Namun, perintah di bawah ini akan terbukti lebih cepat setelah Anda terbiasa mengetiknya:

cp spideroak_inotify_db.07pkh3{,.old} 

Ini (seperti yang bisa Anda tebak) menyalin file dengan menambahkan .old ekstensi file ke file. Itu bagus, Anda mungkin berkata, tetapi saya ingin mengganti nama banyak file sekaligus. Tentu, Anda bisa tulis loop for untuk menangani ini (dan pada kenyataannya, saya sering melakukan ini untuk sesuatu yang rumit) tetapi mengapa Anda melakukannya ketika ada utilitas praktis yang disebut rename ? Ada beberapa perbedaan dalam penggunaan utilitas ini antara Debian/Ubuntu dan CentOS/Arch. Rename berbasis Debian menggunakan sintaks seperti SED:

pengguna@ubuntu-1604:/tmp$ untuk x dalam `seq 1 5`; sentuh old_text_file_${x}.txt; selesai

pengguna@ubuntu-1604:/tmp$ ls old_text_file_*
old_text_file_1.txt old_text_file_3.txt old_text_file_5.txt
old_text_file_2.txt old_text_file_4.txt

pengguna@ubuntu-1604:/tmp$ rename 's/old_text_file/shiney_new_doc/' *.txt

pengguna@ubuntu-1604:/tmp$ ls shiney_new_doc_*
shiney_new_doc_1.txt shiney_new_doc_3.txt shiney_new_doc_5.txt
shiney_new_doc_2.txt shiney_new_doc_4.txt

Pada kotak CentOS atau Arch akan terlihat serupa:

[pengguna@centos /tmp]$ untuk x dalam `seq 1 5`; sentuh old_text_file_${x}.txt; selesai

[user@centos /tmp]$ ls old_text_file_*
old_text_file_1.txt old_text_file_3.txt old_text_file_5.txt
old_text_file_2.txt old_text_file_4.txt

[user@centos tmp]$ rename old_text_file centos_new_doc *.txt

[user@centos tmp]$ ls centos_new_doc_*
centos_new_doc_1.txt centos_new_doc_3.txt centos_new_doc_5.txt
centos_new_doc_2 .txt centos_new_doc_4.txt

Ikatan kunci bash

Bash memiliki banyak pintasan keyboard bawaan. Anda dapat menemukan daftarnya dengan mengetikkan bind -p . Saya pikir akan berguna untuk menyoroti beberapa, meskipun beberapa mungkin terkenal.

  • ctrl + _ (membatalkan)
  • ctrl + t (tukar dua karakter)
  • ALT + t (tukar dua kata)
  • ALT + . (mencetak argumen terakhir dari perintah sebelumnya)
  • ctrl + x + * (perluas glob/bintang)
  • ctrl + panah (majukan satu kata)
  • ALT + f (majukan satu kata)
  • ALT + b (mundur satu kata)
  • ctrl + x diikuti oleh ctrl + e (membuka string perintah di editor sehingga Anda dapat mengeditnya sebelum dieksekusi)
  • ctrl + e (gerakkan kursor ke akhir)
  • ctrl + a (gerakkan kursor untuk memulai)
  • ctrl + xx (pindah ke ujung baris yang berlawanan)
  • ctrl + u (memotong semuanya sebelum kursor)
  • ctrl + k (memotong semuanya setelah kursor)
  • ctrl + y (menempel dari buffer)
  • ctrl + l (huruf kecil L, membersihkan layar)

Saya tidak akan membahas yang lebih jelas. Namun, beberapa pintasan paling berguna yang saya temukan adalah pintasan yang memungkinkan Anda menghapus kata (atau bagian teks) dan membatalkannya. Misalkan Anda akan menghentikan banyak layanan menggunakan systemd , tetapi Anda hanya ingin memulai beberapa setelah beberapa operasi selesai. Anda mungkin melakukan sesuatu seperti ini:

systemctl stop httpd mariadb nfs smbd

Tetapi bagaimana jika Anda menghapus satu terlalu banyak? Tidak masalah—cukup gunakan ctrl + _ untuk membatalkan pengeditan terakhir.

Perintah potong lainnya memungkinkan Anda untuk dengan cepat menghapus semuanya dari kursor ke akhir atau awal baris (menggunakan Ctrl + k dan Ctrl + u , masing-masing). Ini memiliki manfaat tambahan dengan menempatkan teks yang dipotong ke dalam buffer terminal sehingga Anda dapat menempelkannya nanti (menggunakan ctrl + y ). Perintah ini sulit untuk didemonstrasikan di sini, jadi saya sangat menyarankan Anda untuk mencobanya sendiri.

Last but not least, saya ingin menyebutkan kombinasi tombol yang jarang digunakan yang bisa sangat berguna di lingkungan terbatas seperti kontainer. Jika Anda pernah memiliki perintah yang terlihat kacau oleh output sebelumnya, ada solusinya:Menekan ctrl + x + ctrl + e akan membuka perintah di editor mana pun yang diatur dalam variabel lingkungan EDITOR. Ini akan memungkinkan Anda untuk mengedit perintah yang panjang atau kacau dalam editor teks yang (berpotensi) dapat membungkus teks. Menyimpan pekerjaan Anda dan keluar, seperti yang Anda lakukan saat mengerjakan file normal, akan menjalankan perintah setelah keluar dari editor.

Tips lain-lain

Anda mungkin menemukan bahwa menampilkan warna di shell Bash Anda dapat meningkatkan pengalaman Anda. Jika Anda menggunakan sesi yang tidak mengaktifkan pewarnaan, di bawah ini adalah serangkaian perintah yang dapat Anda tempatkan di .bash_profile Anda untuk menambahkan warna ke sesi Anda. Ini cukup mudah dan tidak memerlukan penjelasan mendalam:

# mengaktifkan warna
eval "`dircolors -b`"

# memaksa ls untuk selalu menggunakan indikator warna dan jenis
alias ls='ls -hF --color =auto'

# membuat perintah dir bekerja seperti di windows (format panjang)
alias dir='ls --color=auto --format=long'

# membuat grep highlight hasil menggunakan warna
ekspor GREP_OPTIONS='--color=auto'

# Tambahkan beberapa warna ke halaman KURANG/MAN
ekspor LESS_TERMCAP_mb=$' \E[01;31m'
ekspor LESS_TERMCAP_md=$'\E[01;33m'
ekspor LESS_TERMCAP_me=$'\E[0m'
ekspor KURANG_TERMCAP_se=$'\E[0m '
ekspor KURANG_TERMCAP_so=$'\E[01;42;30m'
ekspor LESS_TERMCAP_ue=$'\E[0m'
ekspor KURANG_TERMCAP_us=$'\E[01;36m'

Seiring dengan menyesuaikan berbagai opsi dalam Bash, Anda juga dapat menggunakan beberapa trik rapi untuk menghemat waktu. Misalnya, untuk menjalankan dua perintah secara berurutan, terlepas dari status keluar masing-masing, gunakan ; untuk memisahkan perintah, seperti yang terlihat di bawah ini:

[user@centos /tmp]$ du -hsc * ; df -h 

Ini hanya menghitung jumlah ruang yang digunakan setiap file di direktori saat ini (dan menjumlahkannya), kemudian menanyakan sistem untuk penggunaan disk per perangkat blok. Perintah ini akan berjalan terlepas dari kesalahan apa pun yang dihasilkan oleh du perintah.

Bagaimana jika Anda ingin tindakan diambil setelah berhasil menyelesaikan perintah pertama? Anda dapat menggunakan && singkatan untuk menunjukkan bahwa Anda ingin menjalankan perintah kedua hanya jika perintah pertama mengembalikan status keluar yang berhasil. Misalnya, Anda ingin me-reboot mesin hanya jika pembaruan berhasil:

[root@arch ~]$ pacman -Syu --noconfirm && reboot 

Terkadang saat menjalankan perintah, Anda mungkin ingin menangkap outputnya. Kebanyakan orang tahu tentang tee perintah, yang akan menyalin output standar ke terminal dan file. Namun, jika Anda ingin menangkap keluaran yang lebih kompleks dari, katakanlah, strace , Anda harus mulai bekerja dengan pengalihan I/O. Detail pengalihan I/O berada di luar cakupan artikel singkat ini, tetapi untuk tujuan kami, kami membahas STDOUT dan STDERR . Cara terbaik untuk menangkap apa yang Anda lihat adalah dengan menggabungkan keduanya dalam satu file. Untuk melakukannya, gunakan 2>&1 pengalihan.

[root@arch ~]$ strace -p 1140 > strace_output.txt 2>&1 

Ini akan menempatkan semua output yang relevan ke dalam file bernama strace_output.txt untuk dilihat nanti.

Terkadang selama perintah yang berjalan lama, Anda mungkin perlu menjeda eksekusi tugas. Anda dapat menggunakan pintasan 'berhenti' ctrl + z untuk menghentikan (tetapi tidak membunuh) pekerjaan. Pekerjaan akan ditambahkan ke antrean pekerjaan, tetapi Anda tidak akan lagi melihat pekerjaan tersebut sampai Anda melanjutkannya. Pekerjaan ini dapat dilanjutkan di lain waktu dengan menggunakan perintah latar depan fg .

Selain itu, Anda juga dapat menjeda pekerjaan dengan ctrl + s . Pekerjaan dan outputnya tetap berada di latar depan terminal, dan penggunaan shell tidak dikembalikan ke pengguna. Pekerjaan dapat dilanjutkan dengan menekan ctrl + q .

Jika Anda bekerja di lingkungan grafis dengan banyak terminal terbuka, Anda mungkin merasa berguna untuk memiliki pintasan keyboard untuk menyalin dan menempelkan keluaran. Untuk melakukannya, gunakan pintasan berikut:

# Menyalin teks yang disorot
ctrl + shift + c

# Menempelkan teks dalam buffer
ctrl + shift + v

Misalkan dalam output dari perintah yang dieksekusi Anda melihat perintah lain sedang dieksekusi, dan Anda ingin mendapatkan informasi lebih lanjut. Ada beberapa cara untuk melakukan ini. Jika perintah ini ada di jalur Anda di suatu tempat, Anda dapat menjalankan which perintah untuk mengetahui di mana perintah itu berada di disk Anda:

[root@arch ~]$ which ls
/usr/bin/ls

Dengan informasi ini, Anda dapat memeriksa biner dengan file perintah:

[root@arch ~]$ file /usr/bin/ls
/usr/bin/ls:ELF 64-bit LSB pie executable x86-64, versi 1 (SYSV), tertaut secara dinamis, interpreter / lib64/ld-linux-x86-64.so.2, untuk GNU/Linux 3.2.0, BuildID[sha1]=d4e02b88e596e4f82c6cc62a5bc4ce5827209a49, dilucuti

Anda dapat melihat semua jenis informasi, tetapi yang paling penting bagi sebagian besar pengguna adalah ELF 64-bit LSB omong kosong. Ini pada dasarnya berarti bahwa ini adalah biner yang telah dikompilasi sebagai lawan dari skrip atau jenis lain yang dapat dieksekusi. Alat terkait yang dapat Anda gunakan untuk memeriksa perintah adalah command alat itu sendiri. Cukup jalankan command -V <command> akan memberi Anda berbagai jenis informasi:

[root@arch ~]$ command -V ls
ls alias `ls --color=auto`

[root@arch ~]$ command -V bash
bash adalah /usr/bin/bash

[root@arch ~]$ command -V shopt
shopt adalah shell bawaan

Terakhir, salah satu trik favorit saya, terutama saat bekerja dengan container atau di lingkungan di mana saya hanya memiliki sedikit pengetahuan atau kontrol, adalah echo memerintah. Perintah ini dapat digunakan untuk melakukan segalanya mulai dari memeriksa untuk memastikan for . Anda loop akan menjalankan urutan yang diharapkan untuk memungkinkan Anda memeriksa apakah port jarak jauh terbuka. Sintaksnya sangat sederhana untuk memeriksa port yang terbuka:echo > /dev/<udp or tcp>/<server ip>/<port> . Misalnya:

pengguna@ubuntu-1604:~$ echo> /dev/tcp/192.168.99.99/222
-bash:sambungkan:Sambungan ditolak
-bash:/dev/tcp/192.168.99.99/ 222:Sambungan ditolak

pengguna@ubuntu-1604:~$ echo> /dev/tcp/192.168.99.99/22

Jika port ditutup untuk jenis koneksi yang Anda coba buat, Anda akan mendapatkan Connection refused pesan. Jika paket berhasil dikirim, tidak akan ada output.

Saya harap tips ini membuat Bash lebih efisien dan menyenangkan untuk digunakan. Ada lebih banyak trik tersembunyi di Bash daripada yang saya sebutkan di sini. Apa yang menjadi favorit Anda?

Lampiran 1. Daftar tips dan trik yang dibahas

# Sejarah terkait 
ctrl + r (pencarian terbalik)
!! (jalankan kembali perintah terakhir)
!* (gunakan kembali argumen dari perintah sebelumnya)
!$ (gunakan argumen terakhir dari perintah terakhir)
shopt -s histappend (izinkan beberapa terminal untuk menulis ke file riwayat )
sejarah | awk 'BEGIN {FS="[ \t]+|\\|"} {cetak $3}' | urutkan | uniq -c | urutkan -nr | head (daftar perintah history yang paling sering digunakan)

# File dan navigasi
cp /home/foo/realllylongname.cpp{,-old}
cd -
rename 's/text_to_find/been_rename/' *.txt
ekspor CDPATH='/var/log:~' (variabel digunakan dengan cd bawaan.)

# Warnai bash

# aktifkan warna
eval "`dircolors -b`"
# paksa ls untuk selalu menggunakan indikator warna dan jenis
alias ls='ls -hF --color =auto'
# membuat perintah dir bekerja seperti di windows (format panjang)
alias dir='ls --color=auto --format=long'
# membuat grep sorot hasil menggunakan warna
ekspor GREP_OPTIONS='--color=auto'

ekspor LESS_TERMCAP_mb=$'\E[01;31m'
ekspor LESS_TERMCAP_md=$'\E[01; 33m'
ekspor KURANG_TERMCAP_me=$'\E[0m'
ekspor LESS_TERMCAP_se=$'\E[0m' # akhiri kotak info
ekspor KURANG_TERMCAP_so=$'\E[01;42;30m' # memulai kotak info
ekspor LESS_TERMCAP_ue=$'\E[0m'
ekspor LESS_TERMCAP_us=$'\E[01;36m'

# Bash pintasan
    shopt -s cdspell (memperbaiki kesalahan ketik)
    ctrl + _ (membatalkan)
    ctrl + panah (memindahkan kata)
    ctrl + a (menggerakkan kursor untuk memulai)
    ctrl + e (memindahkan kursor ke akhir)
    ctrl + k (memotong semuanya setelah kursor)
    ctrl + l (menghapus layar)
    ctrl + q (melanjutkan perintah yang ada di latar depan)
    ctrl + s (menjeda perintah yang berjalan lama di latar depan)
    ctrl + t (menukar dua karakter)
    ctrl + u (memotong semuanya sebelum kursor)
    ctrl + x + ctrl + e ( membuka string perintah di editor sehingga Anda dapat mengeditnya sebelum dijalankan)
    ctrl + x + * (memperluas glob/star)
    ctrl + xx (pindah ke ujung baris yang berlawanan)
    ctrl + y (menempel dari buffer)
    ctrl + shift + c/v (salin/tempel ke terminal)

# Menjalankan perintah secara berurutan
&&(menjalankan perintah kedua jika yang pertama berhasil)
; (jalankan perintah kedua terlepas dari keberhasilan yang pertama)

# Mengarahkan I/O
2>&1 (mengalihkan stdout dan stderr ke file)

# centang untuk port yang terbuka
echo> /dev/tcp/ /
`` (gunakan tanda centang kembali untuk keluar)

# Periksa executable
yang
file
command -V (memberi tahu Anda apakah adalah built-in, biner atau alias)

Linux
  1. 8 tips untuk baris perintah Linux

  2. Dua kegunaan hebat untuk perintah cp:pintasan Bash

  3. 8 perintah Linux virsh untuk mengelola VM pada baris perintah

  1. Bash Echo Baris Perintah Dieksekusi Di Baris Perintah Itu Sendiri (bukan Dalam Script)?

  2. Memahami Tanda Seru (!) Di Bash?

  3. Kiat Baris Perintah Linux untuk Meningkatkan Produktivitas

  1. Cara Menghapus Riwayat Baris Perintah BASH di Linux

  2. Perintah bash bang:Trik yang harus diketahui untuk baris perintah Linux

  3. Apakah alat baris perintah pdftotext untuk mac?