Apakah mungkin untuk meniru (apakah itu kata yang tepat?) versi Bash sebelumnya?
Saya menggunakan 4.3.11, dan saya ingin tahu apakah skrip saya kompatibel dengan beberapa versi sebelumnya, tetapi saya sebenarnya tidak ingin menginstal versi sebelumnya. Saya dapat menggali log perubahan dan mencari tahu fitur apa yang saya gunakan yang kurang dari versi sebelumnya, tetapi itu tampaknya agak membosankan. Saya berharap untuk semacam opsi baris perintah ajaib atau perintah skrip, sebagai gantinya (harapan, mungkin).
Jawaban yang Diterima:
Tidak, bash tidak dapat meniru versi bash yang lebih lama. Namun cukup mudah untuk menyiapkan lingkungan pengujian yang menyertakan versi bash yang lebih lama.
Menginstal versi lama dari masing-masing perangkat lunak itu membosankan jika Anda harus menginstal setiap paket perangkat lunak secara manual, belum lagi menyelesaikan ketidakcocokan perpustakaan. Namun ada solusi yang lebih mudah:instal distribusi yang lebih lama . Menginstal distribusi lama, dengan perangkat lunak yang konsisten termasuk paket pengembangan, menghabiskan sekitar $1 ruang hard disk dan mungkin satu jam untuk menyiapkannya untuk pertama kali.
Paket schroot memudahkan untuk menginstal distribusi Linux yang lebih lama (atau lebih baru!) yang berjalan pada sistem yang sama dengan sistem Linux normal Anda. Anda dapat dengan mudah membuat pengaturan schroot di mana Anda dapat menjalankan program di lingkungan (chroot) di mana direktori sistem menunjuk ke perangkat lunak yang lebih lama, tetapi direktori home adalah direktori lingkungan normal. Saya menulis panduan untuk distribusi berbasis Debian; Anda dapat dengan mudah kembali ke Debian slink (dengan bash 2.01.01) dengan cara ini.
Jika Anda ingin menguji dengan varian Unix yang berbeda, arsitektur CPU yang berbeda, atau perangkat lunak yang sangat lama, Anda dapat menjalankan OS lain di mesin virtual. Ada sedikit lebih banyak overhead (dalam RAM, ruang disk, CPU, dan pemeliharaan) tetapi masih sangat bisa dilakukan.