GNU/Linux >> Belajar Linux >  >> Linux

20 perintah Linux satu baris untuk ditambahkan ke kotak peralatan Anda

Banyak pengguna Linux telah mengalami rasa pencapaian yang bertahan lama setelah menyusun perintah yang sangat cerdas yang mencapai banyak tindakan hanya dalam satu baris atau yang berhasil melakukan dalam satu baris apa yang biasanya membutuhkan 10 klik dan sebanyak mungkin jendela dalam antarmuka pengguna grafis (GUI). Selain sebagai barang legenda, one-liners adalah contoh bagus mengapa terminal dianggap sebagai alat yang sangat kuat.

Pada akhir artikel ini, Anda akan memiliki:

  • Daftar 20 perintah yang akan membuat tugas Anda lebih mudah saat bekerja di Linux
  • Pemahaman tentang kemungkinan menggabungkan perintah sederhana untuk membuat perintah yang lebih kuat
  • Lebih menyenangkan dari yang Anda harapkan menjalankan perintah ini

Tanpa urutan kepentingan tertentu, ini adalah 20 one-liner teratas kami untuk terminal Linux. Meskipun kami telah membagi beberapa perintah yang lebih panjang dengan \ simbol agar lebih mudah dibaca, Anda dapat memasukkan semuanya dalam satu baris di terminal Anda karena, bagaimanapun, semuanya adalah satu baris.

1. Terapkan perintah pada file dengan nama berbeda

{} shell cangkang operator sangat bagus untuk ini. Berikut adalah contoh dengan tiga direktori yang diapit {} :

$ mkdir -p -v /home/josevnz/tmp/{dir1,anotherdir,similardir}

2. Edit file di tempat

Apakah Anda ingin mengganti string pada satu atau lebih file tanpa menggunakan editor? Oke, sed untuk menyelamatkan:

$ sed -i 's#ORIGINAL_VALLUE#NEW_VALUE#g' myfile1 myfile2

Tapi tunggu, pecinta Perl akan memberi tahu Anda bahwa mereka dapat melakukan hal yang sama:

$ perl -p -i -e 's#ORIGINAL#NEW_VALUE#' myfile1 myfile2

3. Bagikan file dengan cepat menggunakan server web

Angkat tangan Anda jika Anda belum pernah menggunakan ini setidaknya sekali untuk berbagi direktori dengan cepat:

$ cd $mydir && python3 -m http.server 8888

4. Temukan kegagalan dengan journalctl

Terkadang barang pecah. Anda dapat menemukan kesalahan terbaru menggunakan kombinasi journalctl , bersama dengan alat klasik sort dan uniq :

$ journalctl --no-pager --since today \
--grep 'fail|error|fatal' --output json|jq '._EXE' | \
sort | uniq -c | sort --numeric --reverse --key 1

898172 "/usr/bin/dockerd"
    752 "/usr/local/sbin/node_exporter"
     30 "/usr/bin/gnome-shell"
     26 "/usr/bin/cat"
     22 "/usr/libexec/gsd-media-keys"
[...]

Dalam hal ini, tampaknya daemon Docker tidak bahagia.

[ Unduh eBuku ini untuk bersiap menghadapi ujian jarak jauh Red Hat Anda. ]

5. Buat cadangan melalui transfer file terenkripsi

Gunakan ssh dan tar untuk membuat cadangan yang aman. Mereka pergi bersama seperti selai kacang dan jeli:

$ tar --create --directory /home/josevnz/tmp/ --file - *| \
ssh raspberrypi "tar --directory /home/josevnz \
--verbose --list --file -"

Anda dapat menambahkan cita rasa ke pekerjaan pencadangan dengan kompresi dan enkripsi—sama seperti menambahkan bahan ke sandwich Anda.

6. Tulis file instan

Ini adalah trik hebat saat Anda perlu menulis dokumen multibaris:

$ cat<<DOC>/my/new/file
Line1
Line2
A $VARIABLE
DOC

Anda juga dapat cat > file , dan setelah selesai mengedit, masukkan saja karakter EOF (Ctrl+D ):

[josevnz@dmaf5 temp]$ cat > testfile
This is a test
multiple lines
and here we go
[josevnz@dmaf5 temp]$ 

7. Cari file, dan sertakan beberapa ekstensi dan kecualikan yang lain

Contoh ini menggunakan grep cara untuk mencari file tertentu. Cukup cepat dan mudah diingat:

$ grep -R 'import' --include='*.java' --color MySourceCodeDir

Atau Anda dapat mencoba find cara (gunakan xargs untuk menangani banyak pertandingan dengan benar):

$ find MySourceCodeDir/ -name '*.java' -type f -print| xargs \
grep --color 'import

Mengapa find , Anda mungkin bertanya? Anda dapat menggabungkan find dengan -exec untuk menjalankan tindakan pada file Anda terlebih dahulu dan kemudian meneruskan hasilnya ke filter. Kemungkinan pemrosesan tidak terbatas di sini.

8. Memantau memori tanpa top atau htop

Yang ini hampir selingkuh. Itu mengulangi perintah, seperti free , setiap lima detik dan soroti perbedaannya:

$ watch -n 5 -d '/bin/free -m'

9. Tampilkan ukuran partisi disk

Gunakan lsbk (daftar blok) dan jq (untuk memanipulasi JSON pada baris perintah) untuk menampilkan informasi partisi:

$ lsblk --json | jq -c '.blockdevices[]|[.name,.size]'
["loop0","55.5M"]
["loop1","156M"]
["loop2","32.3M"]
["zram0","4G"]
["nvme0n1","476.9G"]

10. Menampilkan jenis file dengan cepat

Apa itu fungsi dipanggil dengan wi . Ini dengan cepat memberi tahu Anda jenis file.

Untuk memeriksa satu file:

$ function wi { test -n "$1" && stat --printf "%F\n" "$1"; }

Untuk memeriksa beberapa file:

$ function wi { test "$#" -gt 0 && stat --printf "%n: %F\n" "$@"; }

CATATAN :Fungsi lebih unggul dan dapat melakukan pekerjaan yang sama sebagai alias.

11. Menampilkan ukuran RPM yang terpasang

Jika Anda memiliki sistem berbasis RPM, cepat atau lambat, Anda akan memformat kueri Anda. Ini contohnya:

$ rpm --queryformat='%12{SIZE} %{NAME}\n' \
-q java-11-openjdk-headless

[ Latih dan uji kursus dan ujian terbaru kami dari Pelatihan &Sertifikasi Red Hat:Jalur keterampilan Red Hat Enterprise Linux. ]

12. Menampilkan ukuran total sekelompok file

Dalam hal ini, find perintah bertindak sebagai filter, menampilkan ukuran setiap file dalam byte, dan terakhir, menampilkan ukuran total:

$ t=0; for n in $(find ~/Documents -type f -name '*.py' -print | xargs \
stat --printf "%s "); do ((t+=n)); done; echo $t

Atau, jika Anda menginginkan suatu fungsi (lebih baik), coba pendekatan ini:

$ function size { t=0; test -d "$1" && for n in $(find $1 \
-type f -name '*.py' -print| \
xargs stat --printf "%s "); do ((t+=n)); done; echo $t; }

size $mydir

13. Perbarui semua repositori Git pada direktori

Anda sudah tahu betapa bergunanya Git. Berikut trik agar lebih efisien dengan pembaruan Anda:

$ for i in */.git; do cd $(dirname $i); git pull; cd ..; done

14. Buka direktori web menggunakan wadah

Kontainer sangat penting saat ini. One-liner ini mengekspos direktori melalui Podman:

$ podman run --rm -v .:/usr/share/nginx/html:ro,Z \
-p 30080:80 -d nginx

15. Periksa cuaca

Gunakan fungsi ini untuk mengetahui apakah Anda membutuhkan jaket hari ini:

weather() { curl -s --connect-timeout 3 -m 5 http://wttr.in/$1; }

16. Menampilkan 10 alamat IP teratas yang mengenai server web

Berikut adalah tugas yang sering digunakan admin web dengan Nginx (mungkin juga bekerja dengan Apache) untuk mengambil 10 alamat protokol internet teratas yang mengenai server web dari log akses:

$ cat /var/log/nginx/access.log | cut -f 1 -d ' ' | sort | \
uniq -c | sort -hr | head -n 10

17. Putaran mengapung di Bash dengan bantuan Python

Anda dapat melakukan hal-hal keren dengan Python, tetapi contoh ini hanya membulatkan angka:

$ echo "22.67892" | python3 -c "print(f'{round(float(input()))}')"
23

18. Jalankan kalkulator mini

Fungsi ini mendefinisikan kalkulator cepat pada baris perintah dengan presisi variabel (standarnya adalah 2). Ini menggunakan bc. Buat fungsi seperti ini:

$ function qqbc() { echo "scale=${2:-2}; $1" | bc -l

Selanjutnya, lakukan perhitungan cepat:

$ qqbc "2/3"
.66

Jika Anda membutuhkan presisi tambahan, cukup tentukan parameter kedua:

$ qqbc "2/3" 4
.6666

Alat ini disebut qqbc karena ini merupakan peningkatan dari fungsi lama qbc .

19. Mengonversi CSV ke JSON

Trik ini adalah modifikasi dari resep populer untuk mengonversi file CSV ke format JSON:

$ python3 -c \
"import csv,json,sys;print(json.dumps(list(csv.reader(open(sys.argv[1])))))" \
covid19-vaccinations-town-age-grp.csv

20. Instal dan jalankan perintah dengan Docker

Jika Anda telah menginstal Docker dan Anda ingin menjalankan perintah tanpa menginstal banyak dependensi pada sistem Anda (saat menjalankan cepat), mungkin ini yang Anda butuhkan:

$ docker run --rm --interactive curlimages/curl curl \
--verbose --location --fail --silent --output - \
https://example.com

Perintah menjalankan versi terbaru curl dari wadah, dan kemudian mengeluarkannya. Perhatikan bahwa perintah diakhiri dengan tanda hubung (- ), yang memberi tahu curl untuk output ke terminal Anda. Kemungkinannya tidak terbatas di sini.

Menutup

Kemampuan untuk membangun kombinasi yang kuat dari perintah sederhana adalah salah satu alasan mengapa Unix dan Linux sangat populer.

Untung. tidak sulit untuk mempelajari one-liners ini. Berfokuslah untuk mengingat apa yang dilakukan perintah sederhana, lalu pikirkan bagaimana Anda dapat menggabungkan banyak perintah sederhana untuk membuat resep yang kuat.

Selalu periksa man atau gunakan info perintah untuk mencari tahu apa lagi yang bisa dilakukan alat. Anda mungkin terkejut mengetahui bahwa satu alat dapat melakukan segalanya tanpa menggabungkannya dengan utilitas lain.

Ada banyak situs di internet dengan banyak contoh satu baris. Kami berharap contoh-contoh ini akan mengarahkan Anda untuk menulis satu kalimat yang lebih baik.


Linux
  1. Perintah Linux untuk menampilkan informasi perangkat keras Anda

  2. Lakukan petualangan di terminal Linux Anda

  3. 5 perintah pemecahan masalah jaringan Linux

  1. Tambahkan 4 alat ini ke kotak alat wadah Linux Anda

  2. 10 tutorial untuk mempertajam keterampilan baris perintah Anda

  3. 10 Temukan Perintah untuk meningkatkan pencarian file Anda di Linux [Dasar-dasar]

  1. 5 kesalahan pemula Linux

  2. 8 perintah Linux praktis favorit saya

  3. Bagaimana cara menambahkan bilah kemajuan untuk menyalin dan memindahkan perintah di Linux?