في هذا الشوط الخامس (الخامس) en desdelinuxصافي حول كيف "تعلم البرمجة النصية لـ Shell" بعد ذلك سوف نقدم تصميم نص باش شل أنني أتمتة المهمة الشاقة المتمثلة في تثبيت جافا JDK عندما يكون OpenJDK لا تفي بمتطلبات العمل ذات الأولوية العالية أو المساعي البحثية.
من المؤكد، OpenJDK والمكوِّن الإضافي للمتصفحات ، شاي مثلجإنها سهلة التثبيت وتغطي في معظم الأحيان جميع توقعاتنا من التطوير والتنفيذ عبر الإنترنت لتطبيقات Java.
يمكن تثبيتها بالطريقة التالية:
aptitude install default-jdk
aptitude install openjdk-7-jdk
aptitude install openjdk-7-jre
aptitude install openjdk-8-jdk
aptitude install openjdk-8-jre
aptitude install icedtea-netx
aptitude install icedtea-plugin
لكن في بعض الأحيان Java JDK (أصلي / خاص) إنه يوفر لنا توافقًا ودعمًا ووظائف جديدة أكبر من تلك الخاصة. لذلك ، عندما نستنفد جميع خياراتنا للعمل مع OpenJDK ولا يحتوي التوزيع أو المستودع لدينا على أحدث إصدار من جافا JDK، أداء يدويًا أو عن طريق ملف نص باش شل قال التثبيت شيء عملي للغاية.
يذكر أن مجموعة تطوير Java (Oracle JDK) هو مجموعة أدوات التطوير الرسمية لغة برمجة جافا ، بيئة تطوير كائنية التوجه. ولماذا التثبيت جافا JDK?
جافا JDK يسمح لنا بكتابة التطبيقات و تطبيقات جافا داخل أو خارج متصفح الإنترنت. يتضمن JDK أيضًا ملفات Java Runtime Environment (JRE)، و مترجم جافا و جافا API. وهو أمر مفيد جدًا للمبرمجين الجدد وذوي الخبرة.
جافا JDK ليس ضروريًا في معظم الأوقات لمستخدم عادي أو أساسي ، وأحيانًا لأشياء بسيطة مثل a لعبة على الانترنت وحدة التحكم المضمنة أو للمستخدمين المتوسطين أو المتقدمين لأشياء مثل الشهادات الإلكترونية، لأن أزراره تطبيقات جافا. لذلك ، غالبًا ما يكون من الضروري تثبيته إذا كنت لا تريد أن يفوتك جزء كبير من الويب. أي على الرغم من وجود العديد من صفحات الويب التي تحتوي على أجزاء صغيرة من جافا JDK (الأزرار والقوائم) أو التي تم تصميمها بالكامل في جافا JDK .
وبالتالي جافا JDK لا يمكن أن يكون مفقودًا في ملف متصفح الويب ونظام التشغيل بشكل عام!
الملاحظة: ليس المقصود أن يوصي بتثبيت "جافا JDK" لكن تظهر الطريق برمجة شل العملية التي تتم سرا ، وهذا هو ، مثل تفكيك (إعادة هندسة عكسية) العملية الآلية التي تحدث عندما نقوم بتثبيته عبر المستودع. إعادة الهندسة العكسية للحزمة مفيدة لفهم كيفية فهم التطبيق والحزمة والبرامج وحتى ملف منصة، خاص أو مجاني ، مثل جنو / لينكس. نفس الشيء ، على سبيل المثال ، يمكن أن يتم باستخدام ملف نواة مجانية لـ GNU / Linux أو Adobe Flash Player لـ GNU / Linux.
بجانب المحتوى المراد إدراجه في ملف نص باش شل أو يجب تنفيذه يدويًا لهذا الغرض:
#!/bin/bash
################################################################################
# INICIO DEL MODULO DE INSTALACIÓN DE ORACLE JAVA JDK
################################################################################
USER_NAME=`cat /etc/passwd | grep 1000 | cut -d: -f1`
HOME_USER_NAME=/home/$USER_NAME
cd $HOME_USER_NAME
cd /opt
cp $HOME_USER_NAME/jdk-* .
clear
echo " Introduzca el numero de Versión de Java JDK (Ejemplo, 7 o 8): "
read NUM_VER
NV=${NUM_VER}
echo ""
echo ""
echo " Introduzca el numero de SubVersion de Java JDK (Ejemplo, 80 o 45): "
read NUM_SUBVER
NSV=${NUM_SUBVER}
VERSION=jdk1.$NV.0_$NSV
echo ""
echo ""
echo " NOTA: Este parámetro solo es usado para descargar el paquete .tar.gz "
echo " Si no lo conoce y ya tiene los paquetes descargados escriba cualquier "
echo " valor como por ejemplo (Ejemplo, b14 o b15) "
echo " Introduzca el numero de revisión de Java JDK (Ejemplo, b14 o b15): "
read NUM_REV
NREV=${NUM_REV}
echo ""
echo ""
echo " Introduzca el Tipo de Arquitectura del Paquete de Java JDK (Ejemplo, 1 para 32 Bit y 2 para 64 Bit): "
read T_ARQ
ARQ_PC=${T_ARQ}
if [ "$ARQ_PC" = "1" ]; then
ARQ1=i586
ARCHIVOJDK=jdk-"$NV"u$NSV-linux-$ARQ1.tar.gz
ARQUITECTURA=i386
else
ARQ2=x64
ARCHIVOJDK=jdk-"$NV"u$NSV-linux-$ARQ2.tar.gz
ARQUITECTURA=amd64
fi
sleep 5
echo ""
echo ""
echo " CONFIRME QUE ESTE ES EL PAQUETE ORACLE JAVA JDK QUE COLOCO PARA SU INSTALACION"
echo ""
echo ""
echo " $ARCHIVOJDK - $VERSION - $NREV - $ARQUITECTURA"
echo ""
echo ""
echo " EN CASO DE NO SER CIERTO, CANCELE EL PROCESO CON CTRL+C, DE LO CONTRARIO"
echo " ESPERE 15 SEGUNDOS MIENTRAS EL PROGRAMA CONTINUA EL PROCESO DE INSTALACION."
echo ""
echo ""
sleep 15
# export http_proxy=http://192.168.3.250:8080
# export no_proxy="127.0.0.1, localhost, 192.168.0.0/22, tu_institucion.gob.ve:8080"
# wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/"$NV"u$NSV-$NREV/$ARCHIVOJDK"
# wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/"$NV"u$NSV-$NREV/$ARCHIVOJDK"
# wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/"$NV"u$NSV-$NREV/$ARCHIVOJDK"
# wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/"$NV"u$NSV-$NREV/$ARCHIVOJDK"
# Descargar manualmente y colocar en la ruta /home/mi_usuario/
# http://www.oracle.com/technetwork/java/javase/downloads/index.html
tar -zxvf $ARCHIVOJDK -C /usr/lib/jvm/
# ACTUALIZACION VARIABLES DE ENTORNO PARA SUN JAVA JDK
echo "JAVA_HOME=/usr/lib/jvm/$VERSION" >> /etc/profile
echo "PATH=$PATH:$HOME/bin:$JAVA_HOME/bin" >> /etc/profile
echo "export JAVA_HOME" >> /etc/profile
echo "export PATH" >> /etc/profile
# INSTALACION Y CONFIGURACION DE LA VERSION ACTUAL DE ORACLE JAVA JDK
update-alternatives --install /usr/bin/java java /usr/lib/jvm/$VERSION/bin/java 1
update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/$VERSION/bin/javac 1
update-alternatives --install /usr/bin/javaws javaws /usr/lib/jvm/$VERSION/bin/javaws 1
update-alternatives --install /usr/bin/jar jar /usr/lib/jvm/$VERSION/bin/jar 1
update-alternatives --install /usr/lib/mozilla/plugins/libjavaplugin.so mozilla-javaplugin.so /usr/lib/jvm/$VERSION/jre/lib/$ARQUITECTURA/libnpjp2.so 1
update-alternatives --set java /usr/lib/jvm/$VERSION/bin/java
update-alternatives --set javac /usr/lib/jvm/$VERSION/bin/javac
update-alternatives --set javaws /usr/lib/jvm/$VERSION/bin/javaws
update-alternatives --set jar /usr/lib/jvm/$VERSION/bin/jar
update-alternatives --set mozilla-javaplugin.so /usr/lib/jvm/$VERSION/jre/lib/$ARQUITECTURA/libnpjp2.so
# CONFIGURACION DE VERSION ACTUAL DE ORACLE JAVA JDK EN MOZILLA FIREFOX Y OPERA BROWSER
cd /usr/lib/mozilla/plugins/
rm -f libnpjp2.so
ln -s /usr/lib/jvm/$VERSION/jre/lib/$ARQUITECTURA/libnpjp2.so
# VERIFICACION Y GUARDADO DE LA ACTUALIZACION DE LA VERSION ACTUAL DE ORACLE JAVA DESCARGADA
java -version
javac -version
. /etc/profile
# FINALIZACION DE INSTALACION DE ORACLE JAVA DESCARGADA
rm -f jdk-*
cd $HOME_USER_NAME
rm -f jdk-*
su - $USER_NAME -c "xdg-open 'http://www.java.com/es/download/installed.jsp'" &
################################################################################
# FINAL DEL MODULO DE INSTALACIÓN DE ORACLE JAVA JDK
################################################################################
==================================================
ملاحظة: أنا شخصيا استخدمه عن طريق تنزيل الملف يدويًا جافا JDK تحديثها يدويًا ، لذلك أستخدم علق سطور تحميل wget، وأنا أضع البرنامج النصي-جافا-jdk.sh في المسار / المنزل / my_user مع الملف جافا JDK قم بتنزيله وتشغيله باستخدام الأمر $ سكربت bash-java-jdk.sh . وفي أقل من 30 ثانية لدي كل شيء عملي. بعد ذلك يمكنك تثبيت أي تطبيق في ملف منصة هذا يتطلب جافا JDK وتشغيل أي تطبيقات java webapps في متصفح يستند إلى Mozilla Firefox.
تذكر أن الفكرة هي فهم كيفية عمل كل سطر بسطر ، وأمر بأمر ، ومتغير حسب المتغير ، لفهم وتعلم البرمجة النصية في شل. لذلك مع هذا المنشور الجديد أترككم مع مهمة بحثية جديدة ومثيرة.
إجراء تعليمي
البرمجة النصية شل وجافا. المقابل. لغة مترجمة كاذبة مثل جافا ولغة مفسرة مثل لغة الصدف. مع جافا تحتاج إلى JVM.
عندما تعيد اختراع العجلة ، حسنًا.
قم بتجميعها إلى C ، ولكن إلى Java ، تأخر.
FELICIDADES
zetaka01 ، أعتقد أنك لم تفهم الغرض من المقالة. من الجيد أحيانًا التفكير مرتين.
تحية.
كتبت نصيًا: «ملاحظة: الغرض ليس التوصية بتثبيت" Java JDK "ولكن إظهار العملية التي تتم سراً عبر Shell Scripting ، أي كيفية تفكيك (إعادة الهندسة العكسية) العملية الآلية التي يتم تنفيذها عند تثبيته عبر المستودع. يعد إجراء إعادة هندسة عكسية للحزمة مفيدًا لفهم كيفية عمل تطبيق وحزمة وبرنامج وحتى نظام تشغيل ، مملوكًا أو مجانيًا ، مثل GNU / Linux. نفس الشيء ، على سبيل المثال ، يمكن أن يتم مع Free Kernel لـ GNU / Linux أو Adobe Flash Player لـ GNU / Linux ».
كان من المفترض أن يكون من المستحيل التفكير (تفسير) ما تعتقده (تفسيره) ، لكن هذا لا يهم!
أوضح: هذه الدروس مخصصة لأولئك الذين لا يعرفون برمجة شل ، تعلم البرمجة النصية من خلال إعادة بناء عمليات التثبيت والتهيئة لبعض البرامج أو الإجراءات ، ملكية أو مجانية على نظام تشغيل جنو / لينكس.
بالقدر نفسه لك: تهانينا وبركات كثيرة!
مع تحياتي. شكرا لمقالاتك. مليء بالمعلومات. استمر في النشر مثل هذا.
حسنًا ، أنا أكره الأجهزة الافتراضية تمامًا. تستمر برامج التحويل البرمجي لـ JIT في التحسن ولكن الآلة الأساسية تبطئها. أفضل أسلوبًا أخف مثل لغة GO للمترجمين الأصليين الآخرين.
أنا حقا أفتقد مترجم python إلى اللغة الأم.
تحية.
ونعم ، أنت على حق ، بمجرد أن قرأت عن JVM فصلت عن المقالة. يشبه الجهاز الظاهري ، JVM أو Mono ، وما إلى ذلك ، نظام التشغيل الموجود أعلى نظام التشغيل الخاص بك.
اعتذاري وتحياتي.
آه ، انتهى الأمر بدون h.
استرخ وتخيل أنك لم تقرأ المقال كاملاً!
مثال متقدم لما يمكن عمله باستخدام Shell Scripting.
اختبار ScreenCast اختبار LPI-SB8 (LINUX POST INSTALL - SCRIPT BICENTENARIO 8.0.0)
(lpi_sb8_adecuación-audiovisual_2016.sh / 43 كيلو بايت)
انظر Screencast: https://www.youtube.com/watch?v=cWpVQcbgCyY
شكرا لك تحياتي الطيبة من فنزويلا.