Per halaman unduhan Magento , di bawah bagian tambalan
Silakan unggah tambalan ke direktori root Magento Anda dan jalankan perintah SSH yang sesuai: Untuk tambalan file dengan ekstensi file `.sh: sh patch_file_name.sh Contoh: sh PATCH_SUPEE-1868_CE_1.7.0.2_v1.sh
Magento merekomendasikan doa langsung dari sh
perintah untuk menjalankan patch runner mereka. Ekstensi file .sh
mendukung ini juga.
Namun, jika Anda melihat bagian atas setiap file patch runner , garis shebang menunjuk ke bash
.
#!/bin/bash
# Patch apllying tool template
# v0.1.2
# (c) Copyright 2013. Magento Inc.
#
Pemrogram dalam diri saya ingin mempercayai file sumber, tetapi proses wink ingin mematuhi apa yang ditulis di situs Magento, yang sinis bertanya-tanya apakah tambalan telah diuji terhadap perbedaan antara bash dan sh .
REQUIRED_UTILS='sed patch'
semua saya lihat di.sh
skrip. Dokumen pemutakhiran untuk versi terbaru berbunyi seperti instruksi stereo, dan peningkatan seharusnya tidak terlalu menyakitkan.Jawaban:
Anda harus menggunakan bash, sebenarnya. Pada baris 14 dari tambalan yang Anda tunjukkan secara eksplisit adalah kode ini:
$((
adalah ekspresi aritmatika yang valid di XCU sh, tetapi((
tidak.)Namun, pada banyak platform mirip UNIX,
/bin/sh
hanya merupakan symlink ke/bin/bash
. Ketika dipanggil dengan namash
, bash memang menonaktifkan sebagian dari perilaku POSIXly-unstrict, tetapi tidak semuanya. Kemungkinan patch ini akan bekerja dengan baik untuk bash yang dipanggil sebagai sh.sumber
chmod +x script && ./script
kernel akan mencoba untuk mengeksekusi perintah di baris shebang dengan file skrip sebagai argumen pertama atau kedua. Bergantung pada situasinya, tidak ada jaminan bahwa ada shell yang terlibat dalam pohon proses itu. Jika Anda mengeksekusish
dengan skrip sebagai argumennya, garis shebang akan diabaikan.Jika itu membantu seseorang di masa depan, saya telah menggunakan Phpstorm untuk menerapkan tambalan dan alat tambalannya sangat bagus. Butuh waktu kurang dari 30 detik untuk menerapkan tambalan tanpa masalah dan Anda juga dapat melihat dan melihat perbedaan yang dimiliki file.
sumber