Pengaturcaraan BASH

Keluarkan Elemen Khusus dari Array di Bash

Keluarkan Elemen Khusus dari Array di Bash
Walaupun keseluruhan prosesnya tidak terlalu mudah dan mungkin seperti hack, anda mungkin dapat membuang elemen dari array yang ada. Kita boleh menggunakan lebih dari satu kaedah untuk membuang elemen. Salah satu kaedahnya adalah "unset," yang digunakan untuk menghapus elemen dari indeks tertentu dan kemudian menggantinya dengan beberapa array lain. Beberapa set elemen lain boleh dihapuskan menggunakan: juga. Anda boleh membuang elemen senarai dari hujung tetapi hanya satu-satunya yang menggunakan kaedah pop (). Mari kita ada beberapa contoh untuk ini.

Contoh 01: Buang Elemen menggunakan Padanan Awalan

Kaedah pertama kami; untuk membuang elemen tertentu dari larik adalah padanan awalan. Log masuk dari sebarang pengedaran Linux yang anda gunakan sekarang dan buka terminal di dalamnya.  Buat input "fail.sh ”. Buka fail ini dari direktori rumah anda dan tuliskan kod di bawahnya.

Mari jelaskan kod ini langkah demi langkah. Untuk menghapus elemen tertentu, anda mesti membuat susunan terlebih dahulu. Oleh itu, mari kita buat satu array bernama "array" dan berikan beberapa nilai, kerana saya telah memberikannya tiga nilai; aqsa, raza, dan saeed.

array = (aqsa raza saeed)

Sekarang kita telah membuat pemboleh ubah lain, "delete", dan memberikannya nilai yang serupa dengan yang berada di "array". Pada hakikatnya, teknik ini digunakan untuk menghilangkan unsur awalan yang menyerupai $ delete, bukan pada dasarnya keseluruhan elemen.

padam = saeed

Selepas itu, kami telah menggunakan pernyataan gema untuk mencetak elemen array selain daripada awalan yang sama. Berikut adalah kod untuk melakukannya:

gema $ array [@] / $ delete

Apabila anda telah menggunakan rentetan, maka anda harus menggunakan skrip yang sama dengan beberapa perubahan seperti di bawah:

array = ("$ array [@] / $ delete")

Anda akan melihat output di bawah. Ia akan memaparkan semua elemen array yang melangkau nilai yang serupa dengan pemboleh ubah awalan "$ delete".

Sekiranya seseorang ingin mengeluarkan lebih daripada satu elemen tertentu dari array, mereka dapat melakukannya dengan mudah. Tulis sahaja kod di bawah dalam fail. Mari jelaskan kod ini.

Tetapkan nilai yang serupa dari array ke pemboleh ubah baru kerana saya telah menetapkan dua nilai untuk pemboleh ubah $ delete.

hapus = (aqsa raza)

Sekarang kita akan menggunakan gelung "untuk" untuk memadankan nilai awalan dengan larik dengan pemboleh ubah $ delete. Gelung "untuk" akan memadankan nilai dengan $ delete dan membuat array lain yang tidak mempunyai nilai yang serupa.

untuk del in $ delete [@]
buat
array = ("$ array [@] / $ del")
selesai
gema $ array [@] / $ delete

Pada pelaksanaan, ia akan menunjukkan nilai yang tersisa, yaitu "saeed".

Contoh 02: Buang Elemen Menggunakan Perintah Tidak Setuju

Kaedah lain adalah "unset," digunakan untuk menghapus elemen dari indeks tertentu dan menduplikasi ke array baru tertentu. Sepanjang senario ini, ia tidak diwajibkan hanya untuk tidak diselesaikan. Oleh kerana unset tidak menghapus elemen, ia hanya menetapkan string null dalam array ke indeks tertentu. Tuliskan kod di bawah dalam fail anda.

Di sini kita telah menentukan susunan global dengan kata kunci "menyatakan" diikuti dengan "-a". Kami telah menetapkan beberapa nilai rentetan dan mencetak semua nilai array.

menyatakan -a array = ('aqsa' 'rimsha "saeed" raza "awan')
gema $ array [@]

Kami akan menetapkan nilai pada indeks 2 dari array dan menyatakan array kosong lain bernama "array2".

unset 'array [2]'
menyatakan -a array2 = ()

Setelah itu, tambahkan pemboleh ubah kenaikan i = 0, menggunakan gelung "untuk" untuk memeriksa elemen dalam array pertama dan menetapkan nilai array pertama ke array kedua, yang merupakan "array2".

i = 0
untuk elemen dalam $ array [@]
buat
array2 [$ i] = elemen $
((++ i))
Selesai
gema $ array [@]

Apabila anda mencetak susunan lama lagi, ia tidak akan memaparkan elemen yang tidak disetel tetapi semua elemen lain. Mari cuba beberapa pernyataan gema untuk memeriksa sama ada elemen yang tidak disetkan berada di tempatnya atau tidak. Pernyataan gema pertama akan memaparkan mesej bersama dengan nilai nombor indeks tertentu dari "array". Anda dapat melihat bahawa kerana nilai pertama sudah ada dalam tatasusunan, nilai itu dipaparkan, dan nilai kedua tidak dapat diselesaikan; oleh itu, ia tidak dipaparkan.

gema “1st nilai ialah $ array [1], 2nd nilai ialah $ array [2] ”

Pernyataan gema lain telah ditulis di mana kita telah memaparkan kandungan array kedua "array2" sebagai:

gema $ array2 [@]

Dalam pernyataan gema terakhir dan ketiga, kami telah memperlihatkan dua nilai khusus dari array kedua "array2" sebagai:

gema “1st nilai ialah $ array2 [1], 2nd nilai ialah $ array2 [2] ”

Semasa pelaksanaan, anda akan mendapat output di bawah.

Contoh 03: Keluarkan Elemen Menggunakan Sub Susunan

Dalam contoh ini, kita akan membuat sub-array baru untuk membuang elemen dari array yang ditentukan. Penerangan mengenai kod di bawah diberikan.

Mari tentukan array "arr" dan berikan beberapa nilai seperti di bawah:

arr = ('e1 "e2" e3 "e4" e5 "e6')

Sekarang cetak array ini menggunakan pernyataan gema, dan kita akan mendapat nilai array sebagai output.

gema $ arr [@]

Langkah yang sangat penting dan penting dari kaedah ini adalah membuat sub-array bagi array yang ditentukan. Oleh itu, marilah kita membuat dua tatasusunan dari larik lama menggunakan indeks sebagai:

arr = ("$ arr [@]: 0: 2" "$ arr [@]: 3")

Dalam kod di atas, kami menggunakan array lama untuk menentukan substring baru sambil menetapkan indeks. Dalam ": 0: 2", angka pertama setelah titik dua menunjukkan nilai indeks, yang akan dimasukkan dalam sub-array, sementara nombor indeks kedua setelah titik dua akan dikeluarkan dari sub-array. Ini bermakna sub-array baru tidak akan mempunyai nilai indeks 2 dari array nyata "arr" yang merupakan "e3". Kurungan "()" digunakan untuk menggabungkan sub-array dan membuat array baru "arr" sekali lagi. Sekarang apabila anda menjalankan fail, ia akan memaparkan susunan lama dan baru seperti di bawah.

gema $ arr [@]

Kesimpulannya

Dalam tutorial ini, kami telah mencuba tiga kaedah dengan berkesan untuk membuang elemen dari array, e.g., menggunakan awalan, unset, dan sub-array. Saya harap panduan ini dapat membantu anda memahami cara membuang elemen dari array dalam bash.

Buat semula butang tetikus anda secara berbeza untuk perisian yang berbeza dengan X-Mouse Button Control
Mungkin anda memerlukan alat yang dapat mengubah kawalan tetikus anda dengan setiap aplikasi yang anda gunakan. Sekiranya ini berlaku, anda boleh menc...
Kajian Tetikus Tanpa Wayar Microsoft Sculpt Touch
Saya baru-baru ini membaca mengenai Sentuhan Microsoft Sculpt tetikus tanpa wayar dan memutuskan untuk membelinya. Setelah menggunakannya sebentar, sa...
Trackpad dan Mouse Pointer pada skrin Windows AppyMouse untuk Tablet Windows
Pengguna tablet sering kehilangan penunjuk tetikus, terutama ketika mereka biasa menggunakan komputer riba. Telefon pintar dan tablet skrin sentuh dil...