GNU/Linux >> Belajar Linux >  >> Linux

Membuat Variabel Menggunakan Nilai Variabel Sebagai Bagian Dari Nama Variabel Baru?

Saya mencoba membuat variabel baru menggunakan nilai variabel yang ada sebagai bagian dari nama variabel.

filemsg"$word1"=" "

Saya juga sudah mencoba

filemsg$word1=" "

filemsg${word1}=" "

pada semua upaya saya mendapatkan yang berikut ketika baris itu dijalankan,

cicserrors.sh[45]: filemsgCICS= : not found [No such file or directory]

Jawaban yang Diterima:

Gunakan eval :

filemsgCICS=foo
word1=CICS
eval "echo "$filemsg$word1"" # => foo
eval "filemsg$word1=bar"
echo "$filemsgCICS" # => bar

tapi pikirkan dua kali jika Anda benar-benar membutuhkannya.

Cara lain di ksh93 adalah menggunakan namerefs:

word1=CICS
nameref v=filemsg$word1
v="xxx" 
echo "$filemsgCICS" # => xxx

Untuk peretasan yang lebih jahat seperti itu, lihat di sini.


Linux
  1. Membuat Proksi Web SOCKS menggunakan SSH

  2. Menggunakan Referensi Ke Variabel Bash String Di Sed?

  3. Apache – Membuat Sertifikat SSL *.local?

  1. Linux – Apakah Slash (/) Bagian Dari Nama Direktori Root Linux?

  2. Membuat File Kosong Memiliki Nama Variabel Dalam Skrip?

  3. Membuat Banyak Direktori Menggunakan Mkdir?

  1. Membuat direktori baru di C

  2. menggunakan awk dengan kondisi nilai kolom

  3. Temukan file yang cocok dengan pola tertentu dan berikan nama file itu sebagai nilai ke variabel dalam skrip shell?