4 ຄຳ ແນະ ນຳ ທີ່ເປັນປະໂຫຍດກ່ຽວກັບ mkdir, tar ແລະຂ້າ Commands ໃນ Linux
ພວກເຮົາສືບຕໍ່ເຮັດ ສຳ ເລັດວຽກງານ ໜຶ່ງ ຢ່າງເປັນປະ ຈຳ ຈົນກວ່າພວກເຮົາຈະຮູ້ວ່າມັນສາມາດປະຕິບັດໄດ້ໃນທາງທີ່ດີກວ່າວິທີອື່ນ. ໃນການສືບຕໍ່ຂອງ Linux Tips ແລະ Trick Series ຂອງພວກເຮົາ, ຂ້າພະເຈົ້າຢູ່ທີ່ນີ້ດ້ວຍ ຄຳ ແນະ ນຳ 4 ຢ່າງຂ້າງລຸ່ມນີ້ທີ່ຈະຊ່ວຍທ່ານໃນຫລາຍໆດ້ານ. ນີ້ພວກເຮົາໄປ!
ໂຄງສ້າງລະບົບຕົ້ນໄມ້ເພື່ອໃຫ້ບັນລຸຕາມທີ່ແນະ ນຳ ຂ້າງລຸ່ມນີ້.
$ cd /home/$USER/Desktop $ mkdir tecmint $ mkdir tecmint/etc $ mkdir tecmint/lib $ mkdir tecmint/usr $ mkdir tecmint/bin $ mkdir tecmint/tmp $ mkdir tecmint/opt $ mkdir tecmint/var $ mkdir tecmint/etc/x1 $ mkdir tecmint/usr/x2 $ mkdir tecmint/usr/x3 $ mkdir tecmint/tmp/Y1 $ mkdir tecmint/tmp/Y2 $ mkdir tecmint/tmp/Y3 $ mkdir tecmint/tmp/Y3/z
ສະຖານະການຂ້າງເທິງນີ້ສາມາດບັນລຸໄດ້ງ່າຍໆໂດຍການແລ່ນ ຄຳ ສັ່ງ 1 ເສັ້ນຂ້າງລຸ່ມ.
$ mkdir -p /home/$USER/Desktop/tecmint/{etc/x1,lib,usr/{x2,x3},bin,tmp/{Y1,Y2,Y3/z},opt,var}
ເພື່ອພິສູດວ່າທ່ານອາດຈະໃຊ້ ຄຳ ສັ່ງຕົ້ນໄມ້. ຖ້າຫາກວ່າບໍ່ໄດ້ຕິດຕັ້ງທ່ານອາດຈະ apt ຫຼື yum ຊຸດ 'ຕົ້ນໄມ້'.
$ tree tecmint
ພວກເຮົາສາມາດສ້າງໂຄງສ້າງຕົ້ນໄມ້ຂອງໄດເລກະທໍລີຂອງຄວາມສັບສົນໃດໆໂດຍໃຊ້ວິທີຂ້າງເທິງ. ໃຫ້ສັງເກດວ່າມັນບໍ່ມີຫຍັງນອກ ເໜືອ ຈາກ ຄຳ ສັ່ງປົກກະຕິແຕ່ມັນໃຊ້ {}
ເພື່ອສ້າງ ລຳ ດັບຂອງລາຍການ. ສິ່ງນີ້ອາດຈະເປັນປະໂຫຍດຫຼາຍຖ້າຖືກ ນຳ ໃຊ້ຈາກພາຍໃນຂອງ ໜັງ ສືແກະເປືອກເມື່ອ ຈຳ ເປັນແລະໂດຍທົ່ວໄປ.
ABC DEF GHI JKL MNO PQR STU VWX Y Z
ຜູ້ໃຊ້ປົກກະຕິຈະເຮັດຫຍັງໃນສະຖານະການນີ້?
ກ. ລາວຈະສ້າງແຟ້ມເອກະສານກ່ອນ, ມັກໃຊ້ ຄຳ ສັ່ງ touch, ຄື:
$ touch /home/$USER/Desktop/test
ຂ. ລາວຈະໃຊ້ບັນນາທິການຕົວ ໜັງ ສືເພື່ອເປີດເອກະສານ, ເຊິ່ງອາດຈະແມ່ນ nano, vim, ຫຼືບັນນາທິການອື່ນໆ.
$ nano /home/$USER/Desktop/test
ຄ. ຈາກນັ້ນລາວຈະເອົາຂໍ້ຄວາມຂ້າງເທິງນີ້ລົງໃນເອກະສານນີ້, ບັນທຶກແລະອອກໄປ.
ສະນັ້ນບໍ່ວ່າລາວ/ລາວຈະໄດ້ໃຊ້ເວລາ ໜ້ອຍ ເທົ່າໃດກໍ່ຕາມ, ລາວຕ້ອງການຢ່າງ ໜ້ອຍ 3 ບາດກ້າວເພື່ອປະຕິບັດສະຖານະການຂ້າງເທິງ.
Linux-er ທີ່ມີປະສົບການທີ່ສະຫຼາດຈະເຮັດແນວໃດ? ລາວພຽງແຕ່ຈະພິມຂໍ້ຄວາມຂ້າງລຸ່ມນີ້ເຂົ້າໄປໃນສະຖານີ ໜຶ່ງ ດຽວແລະ ສຳ ເລັດແລ້ວ. ລາວບໍ່ ຈຳ ເປັນຕ້ອງເຮັດການກະ ທຳ ແຕ່ລະຢ່າງຕ່າງຫາກ.
cat << EOF > /home/$USER/Desktop/test ABC DEF GHI JKL MNO PQR STU VWX Y Z EOF
ທ່ານອາດຈະໃຊ້ ຄຳ ສັ່ງ 'cat' ເພື່ອກວດເບິ່ງວ່າເອກະສານແລະເນື້ອຫາຂອງມັນຖືກສ້າງຂື້ນຢ່າງປະສົບຜົນ ສຳ ເລັດຫຼືບໍ່.
$ cat /home/avi/Desktop/test
ໂດຍປົກກະຕິພວກເຮົາເຮັດສອງຢ່າງໃນສະຖານະການນີ້.
ກ. ສຳ ເນົາ/ຍ້າຍບານ tar ແລະສະກັດມັນຢູ່ປາຍທາງ, ດັ່ງທີ່:
$ cp firefox-37.0.2.tar.bz2 /opt/ or $ mv firefox-37.0.2.tar.bz2 /opt/
ຂ. cd ໃສ່/opt/directory.
$ cd /opt/
ຄ. ສານສະກັດຈາກ Tarball.
# tar -jxvf firefox-37.0.2.tar.bz2
ພວກເຮົາສາມາດເຮັດສິ່ງນີ້ໄດ້ໃນທາງອື່ນ.
ພວກເຮົາຈະເອົາ Tarball ບ່ອນທີ່ມັນຢູ່ແລະ Copy/ຍ້າຍເອກະສານເກັບຂໍ້ມູນໄປຍັງຈຸດ ໝາຍ ປາຍທາງທີ່ຕ້ອງການຄື:
$ tar -jxvf firefox-37.0.2.tar.bz2 $ cp -R firefox/ /opt/ or $ mv firefox/ /opt/
ໃນກໍລະນີບໍ່ວ່າວຽກຈະ ກຳ ລັງ ດຳ ເນີນສອງຂັ້ນຕອນເພື່ອເຮັດ ສຳ ເລັດ. ນັກວິຊາຊີບສາມາດເຮັດ ສຳ ເລັດວຽກງານນີ້ໄດ້ໃນບາດກ້າວ ໜຶ່ງ ຄື:
$ tar -jxvf firefox-37.0.2.tar.bz2 -C /opt/
ຕົວເລືອກ C ເຮັດໃຫ້ tar ສະກັດເອກະສານເກັບໄວ້ໃນໂຟນເດີທີ່ລະບຸໄວ້ (ນີ້/ເລືອກ /).
ບໍ່ມັນບໍ່ແມ່ນກ່ຽວກັບທາງເລືອກ ໜຶ່ງ (-C) ແຕ່ມັນແມ່ນກ່ຽວກັບນິໄສ. ສ້າງນິໄສການໃຊ້ຕົວເລືອກ -C ກັບ tar. ມັນຈະເຮັດໃຫ້ຊີວິດທ່ານງ່າຍຂື້ນ. ຈາກນີ້ຢ່າຍ້າຍຮວບຮວມຫຼືຄັດລອກ/ຍ້າຍເອກະສານທີ່ສະກັດ, ພຽງແຕ່ອອກຈາກບານ TAR ຢູ່ໃນໂຟນເດີດາວໂຫລດແລະສະກັດຢູ່ທຸກບ່ອນທີ່ທ່ານຕ້ອງການ.
ໂດຍທົ່ວໄປ, ທຳ ອິດພວກເຮົາລົງລາຍຊື່ທຸກຂັ້ນຕອນໂດຍໃຊ້ ຄຳ ສັ່ງ ps -A
ແລະສົ່ງມັນດ້ວຍ grep ເພື່ອຊອກຫາຂັ້ນຕອນ/ການບໍລິການ (ເວົ້າ apache2), ງ່າຍໆຄື:
$ ps -A | grep -i apache2
1006 ? 00:00:00 apache2 2702 ? 00:00:00 apache2 2703 ? 00:00:00 apache2 2704 ? 00:00:00 apache2 2705 ? 00:00:00 apache2 2706 ? 00:00:00 apache2 2707 ? 00:00:00 apache2
ຜົນໄດ້ຮັບຂ້າງເທິງສະແດງໃຫ້ເຫັນທຸກຂັ້ນຕອນທີ່ ກຳ ລັງແລ່ນ apache2 ກັບ PID ຂອງພວກເຂົາ, ທ່ານສາມາດໃຊ້ PID ເຫຼົ່ານີ້ເພື່ອຂ້າ apache2 ໂດຍການຊ່ວຍເຫຼືອຂອງ ຄຳ ສັ່ງຕໍ່ໄປນີ້.
# kill 1006 2702 2703 2704 2705 2706 2707
ແລະຫຼັງຈາກນັ້ນຂ້າມການກວດສອບຖ້າວ່າຂັ້ນຕອນ/ການບໍລິການໃດ ໜຶ່ງ ທີ່ມີຊື່ວ່າ 'apache2' ກຳ ລັງເຮັດວຽກຫຼືບໍ່ເຊັ່ນ:
$ ps -A | grep -i apache2
ເຖິງຢ່າງໃດກໍ່ຕາມພວກເຮົາສາມາດເຮັດມັນໄດ້ໃນຮູບແບບທີ່ສາມາດເຂົ້າໃຈໄດ້ຫຼາຍຂຶ້ນໂດຍໃຊ້ສິ່ງ ອຳ ນວຍຄວາມສະດວກເຊັ່ນ: pgrep ແລະ pkill. ທ່ານອາດຈະຊອກຫາຂໍ້ມູນທີ່ກ່ຽວຂ້ອງກ່ຽວກັບຂະບວນການພຽງແຕ່ໃຊ້ pgrep. ເວົ້າວ່າທ່ານຕ້ອງຊອກຫາຂໍ້ມູນກ່ຽວກັບຂັ້ນຕອນ ສຳ ລັບ apache2, ທ່ານອາດຈະເຮັດ:
$ pgrep apache2
15396 15400 15401 15402 15403 15404 15405
ນອກນັ້ນທ່ານຍັງອາດຈະຂຽນຊື່ຂະບວນການຕໍ່ pid ໂດຍການແລ່ນ.
$ pgrep -l apache2
15396 apache2 15400 apache2 15401 apache2 15402 apache2 15403 apache2 15404 apache2 15405 apache2
ການຂ້າຂະບວນການໂດຍໃຊ້ pkill ແມ່ນງ່າຍດາຍຫຼາຍ. ທ່ານພຽງແຕ່ພິມຊື່ຂອງຊັບພະຍາກອນເພື່ອຂ້າແລະທ່ານກໍ່ເຮັດແລ້ວ. ຂ້າພະເຈົ້າໄດ້ຂຽນຂໍ້ຄວາມລົງໃນ pkill ເຊິ່ງທ່ານອາດຈະຕ້ອງການອ້າງອີງທີ່ນີ້: https://linux-console.net/how-to-kill-a-process-in-linux/.
ເພື່ອຂ້າຂະບວນການ (ເວົ້າ apache2) ໂດຍໃຊ້ pkill, ສິ່ງທີ່ທ່ານຕ້ອງເຮັດແມ່ນ:
# pkill apache2
ທ່ານອາດຈະກວດພິສູດວ່າ apache2 ໄດ້ຖືກຂ້າຫລືບໍ່ໂດຍການໃຊ້ ຄຳ ສັ່ງຂ້າງລຸ່ມນີ້.
$ pgrep -l apache2
ມັນສົ່ງຄືນການກະຕຸ້ນເຕືອນແລະພິມບໍ່ມີຫຍັງຫມາຍຄວາມວ່າບໍ່ມີຂັ້ນຕອນທີ່ເຮັດວຽກໂດຍຊື່ຂອງ apache2.
ທັງ ໝົດ ນີ້ແມ່ນມາຈາກຂ້ອຍ. ທຸກຈຸດທີ່ກ່າວມາຂ້າງເທິງນັ້ນບໍ່ພຽງພໍແຕ່ຈະຊ່ວຍໄດ້ແນ່ນອນ. ພວກເຮົາບໍ່ພຽງແຕ່ ໝາຍ ຄວາມວ່າຈະຜະລິດການສອນເພື່ອເຮັດໃຫ້ທ່ານໄດ້ຮຽນຮູ້ສິ່ງ ໃໝ່ໆ ທຸກໆຄັ້ງ, ແຕ່ພວກເຮົາຍັງຕ້ອງການສະແດງ ‘ວິທີການຜະລິດທີ່ມີປະສິດຕິພາບຫຼາຍຂຶ້ນໃນຂອບດຽວກັນ’. ໃຫ້ພວກເຮົາມີ ຄຳ ຕິຊົມທີ່ມີຄ່າຂອງທ່ານໃນ ຄຳ ເຫັນຂ້າງລຸ່ມນີ້. ຮັກສາການເຊື່ອມຕໍ່. ໃຫ້ ຄຳ ເຫັນຕໍ່ໄປ.