ຄຳ ຖາມ ສຳ ພາດແລະ ຄຳ ຕອບກ່ຽວກັບການປະຕິບັດຕົວຈິງໃນ Linux Shell Scripting
ດ້ວຍ ຄຳ ຕອບທີ່ລົ້ນເຫຼືອທີ່ພວກເຮົາ ກຳ ລັງໄດ້ຮັບໃນບົດຄວາມ ສຳ ພາດບົດ ທຳ ອິດ, ມັນເປັນສິ່ງ ທຳ ອິດໃນເວັບໄຊທ໌ Linux How-to ໃດໃນຮູບແບບຂອງ Likes, ຄຳ ຕິຊົມໃນ ຄຳ ເຫັນກໍ່ຄືໃນທີ່ຢູ່ອີເມວສ່ວນຕົວເຮັດໃຫ້ພວກເຮົາໄປຈາກບົດຄວາມ ໜຶ່ງ ໄປຫາຫົວຂໍ້ຕໍ່ໄປ ບົດຄວາມ.
ນີ້ແມ່ນການເຊື່ອມຕໍ່ກັບບົດຄວາມ ສຳ ພາດບົດ ສຳ ພາດທີ່ເຜີຍແຜ່ແລ້ວໃນ linux-console.net, ເຊິ່ງພວກເຮົາໄດ້ກວມເອົາຫລາຍຫົວຂໍ້ viz, FTP, MySQL, Apache, Scripting, Linux Commands, ແລະອື່ນໆ.
ສືບຕໍ່ໃນຊຸດຂ້າງເທິງນີ້ພວກເຮົາ ກຳ ລັງມາພ້ອມກັບອີກ 5 ຄຳ ຖາມ ສຳ ພາດກ່ຽວກັບ Linux ສຳ ລັບ ຄຳ ຖາມແລະ ຄຳ ຕອບຂອງພວກເຂົາ. ການສະ ໜັບ ສະ ໜູນ ຂອງທ່ານ (The linux-console.net ຜູ້ອ່ານແລະຜູ້ເຂົ້າຊົມເລື້ອຍໆ) ແມ່ນມີຄວາມ ຈຳ ເປັນເພື່ອໃຫ້ມັນປະສົບຜົນ ສຳ ເລັດ.
ດຽວນີ້ສ້າງແຟ້ມທີ່ມີຊື່ວ່າ 'userstats.sh' ແລະຕື່ມໃສ່ລະຫັດຕໍ່ໄປນີ້.
#!/bin/bash echo "Hello, $LOGNAME" echo "Current date is `date`" echo "User is `who i am`" echo "Current directory `pwd`"
ຈັດວາງການອະນຸຍາດແລະ ດຳ ເນີນການສະຄຣິບດັ່ງທີ່ສະແດງຢູ່ດ້ານລຸ່ມ.
# chmod 755 userstats.sh # ./userstats.sh
Hello, avi Current date is Sat Jun 7 13:05:29 IST 2014 User is avi pts/0 2014-06-07 11:59 (:0) Current directory /home/avi/Desktop
ສ້າງແຟ້ມອີກຊື່ ໜຶ່ງ ວ່າ 'two-numbers.sh' ແລະຕື່ມເນື້ອຫາຕໍ່ໄປນີ້ໃສ່ມັນ.
#!/bin/bash # The Shebang if [ $# -ne 2 ] # If two Inputs are not received from Standard Input then # then execute the below statements echo "Usage - $0 x y" # print on standard output, how-to use the script (Usage - ./1.sh x y ) echo " Where x and y are two nos for which I will print sum" # print on standard output, “Where x and y are two nos for which I will print sum ” exit 1 # Leave shell in Error Stage and before the task was successfully carried out. fi # End of the if Statement. echo "Sum of $1 and $2 is `expr $1 + $2`" # If the above condition was false and user Entered two numbers as a command Line Argument, it will show the sum of the entered numbers.
ຕັ້ງຄ່າການອະນຸຍາດຂອງ executer ຢູ່ໃນເອກະສານແລະ ດຳ ເນີນການ script ດັ່ງຮູບຂ້າງລຸ່ມນີ້.
# chmod 755 two-numbers.sh
ເງື່ອນໄຂທີ 1: ການແລ່ນສະຄຣິບໂດຍບໍ່ຕ້ອງໃສ່ສອງຕົວເລກເປັນການໂຕ້ຖຽງເສັ້ນ ຄຳ ສັ່ງ, ທ່ານຈະໄດ້ຮັບຜົນຜະລິດຕໍ່ໄປນີ້.
# ./two-numbers.sh Usage - ./two-numbers.sh x y Where x and y are two nos for which I will print sum
ເງື່ອນໄຂທີ 2: ເມື່ອຕົວເລກຖືກໃສ່ເຂົ້າໃນການໂຕ້ຖຽງເສັ້ນ ຄຳ ສັ່ງທ່ານຈະໄດ້ຮັບຜົນຕາມທີ່ສະແດງ.
$ ./two-numbers.sh 4 5 Sum of 4 and 5 is 9
ດັ່ງນັ້ນຕົວ ໜັງ ສືແກະທີ່ກ່າວມາຂ້າງເທິງນີ້ເຮັດໃຫ້ສະພາບເງື່ອນໄຂດັ່ງທີ່ແນະ ນຳ ໃນ ຄຳ ຖາມ.
<
ອີກເທື່ອ ໜຶ່ງ, ສ້າງແຟ້ມເອກະສານທີ່ມີຊື່ວ່າ ‘numbers.sh’ ແລະຕື່ມໃສ່ລະຫັດທີ່ລະບຸໄວ້ດັ່ງຕໍ່ໄປນີ້.
#!/bin/bash if [ $# -ne 1 ] then echo "Usage: $0 number" echo " I will find reverse of given number" echo " For eg. $0 0123, I will print 3210" exit 1 fi n=$1 rev=0 sd=0 while [ $n -gt 0 ] do sd=`expr $n % 10` rev=`expr $rev \* 10 + $sd` n=`expr $n / 10` done echo "Reverse number is $rev"
ໃຫ້ການອະນຸຍາດ ດຳ ເນີນການໃນເອກະສານແລະ ດຳ ເນີນການສະຄຣິບດັ່ງທີ່ສະແດງຢູ່ດ້ານລຸ່ມ.
# chmod 755 numbers.h
ເງື່ອນໄຂ 1: ເມື່ອ Input ບໍ່ໄດ້ຖືກສະ ໜອງ ໃຫ້ເປັນການໂຕ້ຖຽງເສັ້ນ ຄຳ ສັ່ງ, ທ່ານຈະໄດ້ຮັບຜົນຜະລິດຕໍ່ໄປນີ້.
./numbers.sh Usage: ./numbers.sh number I will find reverse of given number For eg. ./2.sh 123, I will print 321
ເງື່ອນໄຂທີ 2: ເມື່ອ Input ຖືກສະ ໜອງ ເປັນແຖວ ຄຳ ສັ່ງ Argument.
$ ./numbers.sh 10572 Reverse number is 27501
ບົດຂຽນຂ້າງເທິງໄດ້ເຮັດວຽກຢ່າງສົມບູນແລະຜົນໄດ້ຮັບແມ່ນສິ່ງທີ່ພວກເຮົາຕ້ອງການ.
ຕົວຢ່າງ, ດໍາເນີນການຄໍາສັ່ງຕໍ່ໄປນີ້ເພື່ອຄິດໄລ່ຕົວເລກໃນເວລາຈິງໂດຍໃຊ້ຄໍາສັ່ງ bc ຕາມທີ່ສະແດງ.
$ echo 7.56 + 2.453 | bc 10.013
# pi 100 3.141592653589793238462643383279502884197169399375105820974944592307816406286208998628034825342117067
ເຫັນໄດ້ແຈ້ງ! ພວກເຮົາຕ້ອງມີຊຸດຕິດຕັ້ງ. ພຽງແຕ່ເຮັດຕາມຄວາມ ເໝາະ ສົມເພື່ອໃຫ້ໄດ້ຊຸດທີ່ຕ້ອງການເພື່ອຕິດຕັ້ງ 'pi' ໃສ່ການແຈກຈ່າຍທີ່ທ່ານ ກຳ ລັງໃຊ້.
ດຽວນີ້ ໝົດ ແລ້ວ. ຂ້ອຍຈະຢູ່ທີ່ນີ້ອີກເທື່ອ ໜຶ່ງ ດ້ວຍບົດຂຽນທີ່ ໜ້າ ສົນໃຈອີກໄວໆນີ້. ຈົນກ່ວານັ້ນຈະຕິດຕາມແລະເຊື່ອມຕໍ່ກັບ linux-console.net. ຢ່າລືມໃຫ້ພວກເຮົາມີ ຄຳ ຕິຊົມທີ່ມີຄຸນຄ່າໃນພາກ ຄຳ ເຫັນຂ້າງລຸ່ມນີ້.