ວິທີການເລີ່ມຕົ້ນ Linux Command ໃນຄວາມເປັນມາແລະການຄົ້ນຫາຂັ້ນຕອນໃນ Terminal


ໃນຄູ່ມືນີ້, ພວກເຮົາຈະ ນຳ ເອົາແນວຄວາມຄິດທີ່ລຽບງ່າຍແຕ່ ສຳ ຄັນໃນການຈັດການກັບຂະບວນການໃນລະບົບ Linux, ນັ້ນແມ່ນວິທີການທີ່ຈະກັກຂັງຂັ້ນຕອນທັງ ໝົດ ອອກຈາກສະຖານີຄວບຄຸມຂອງມັນ.

ໃນເວລາທີ່ຂະບວນການທີ່ກ່ຽວຂ້ອງກັບຢູ່ປາຍຍອດ, ສອງບັນຫາອາດຈະເກີດຂື້ນ:

<

  • ສະຖານີຄວບຄຸມຂອງທ່ານເຕັມໄປດ້ວຍຂໍ້ມູນຜົນຜະລິດຫຼາຍແລະຂໍ້ຄວາມຜິດພາດ/ຂໍ້ບົ່ງມະຕິ.
  • ໃນກໍລະນີທີ່ສະຖານີດັ່ງກ່າວຖືກປິດ, ຂະບວນການຮ່ວມກັນກັບຂະບວນການລູກຂອງມັນຈະຖືກຢຸດ.
  • ເພື່ອຈັດການກັບສອງປະເດັນນີ້, ທ່ານ ຈຳ ເປັນຕ້ອງຖອດຂະບວນການທັງ ໝົດ ອອກຈາກທ່າຄວບຄຸມ. ກ່ອນທີ່ພວກເຮົາຈະຍ້າຍຕົວຈິງເພື່ອແກ້ໄຂບັນຫາ, ຂໍໃຫ້ເຮົາສະຫຼຸບສັ້ນໆກ່ຽວກັບວິທີການ ດຳ ເນີນຂັ້ນຕອນຕ່າງໆໃນພື້ນຖານ.

    ວິທີການເລີ່ມຕົ້ນຂັ້ນຕອນ Linux ຫຼື ຄຳ ສັ່ງໃນພື້ນຫລັງ

    ຖ້າຂັ້ນຕອນປະຕິບັດຢູ່ແລ້ວ, ເຊັ່ນວ່າຕົວຢ່າງ ຄຳ ສັ່ງ tar ຂ້າງລຸ່ມນີ້, ກົດປຸ່ມ Ctrl + Z ເພື່ອຢຸດມັນຫຼັງຈາກນັ້ນໃສ່ ຄຳ ສັ່ງ bg ເພື່ອສືບຕໍ່ການປະຕິບັດຢູ່ໃນ ຄວາມເປັນມາເປັນວຽກ.

    ທ່ານສາມາດເບິ່ງວຽກພື້ນຫລັງຂອງທ່ານທັງ ໝົດ ໂດຍການພິມ ວຽກ . ເຖິງຢ່າງໃດກໍ່ຕາມ, stdin, stdout, stderr ຂອງມັນຍັງເຂົ້າຮ່ວມກັບສະຖານີ.

    $ tar -czf home.tar.gz .
    $ bg
    $ jobs
    

    ທ່ານສາມາດ ດຳ ເນີນຂັ້ນຕອນໂດຍກົງຈາກພື້ນຫລັງໂດຍໃຊ້ເຄື່ອງ ໝາຍ ampersand, & .

    $ tar -czf home.tar.gz . &
    $ jobs
    

    ເບິ່ງຕົວຢ່າງຂ້າງລຸ່ມນີ້, ເຖິງແມ່ນວ່າ ຄຳ ສັ່ງ tar ຖືກເລີ່ມຕົ້ນເປັນວຽກພື້ນຫລັງ, ຂໍ້ຄວາມຜິດພາດຍັງຖືກສົ່ງໄປຍັງຢູ່ປາຍຍອດ ໝາຍ ຄວາມວ່າຂະບວນການນີ້ຍັງເຊື່ອມຕໍ່ກັບສະຖານີຄວບຄຸມ.

    $ tar -czf home.tar.gz . &
    $ jobs
    

    ຮັກສາໂປແກຼມ Linux ທີ່ເຮັດວຽກພາຍຫຼັງທີ່ອອກຈາກ Terminal

    ພວກເຮົາຈະໃຊ້ ຄຳ ສັ່ງທີ່ປະຕິເສດ, ມັນຖືກ ນຳ ໃຊ້ຫຼັງຈາກຂັ້ນຕອນທີ່ໄດ້ຖືກເປີດຕົວແລະວາງພື້ນຫລັງ, ມັນກໍ່ເປັນວຽກທີ່ຈະ ກຳ ຈັດ ໜ້າ ວຽກແກະອອກຈາກ ໜ້າ ວຽກທີ່ມີການເຄື່ອນໄຫວຂອງຫອຍ, ສະນັ້ນທ່ານຈະບໍ່ໃຊ້ fg , bg ຄຳ ສັ່ງກ່ຽວກັບວຽກງານສະເພາະນັ້ນອີກຕໍ່ໄປ.

    ນອກຈາກນັ້ນ, ເມື່ອທ່ານປິດສະຖານີຄວບຄຸມ, ວຽກຈະບໍ່ຫ້ອຍຫລືສົ່ງ SIGHUP ໄປຫາວຽກເດັກໃດກໍ່ໄດ້.

    ໃຫ້ເບິ່ງທີ່ຕົວຢ່າງຂ້າງລຸ່ມນີ້ຂອງການໃຊ້ diswon bash ກໍ່ສ້າງໃນ ໜ້າ ທີ່.

    $ sudo rsync Templates/* /var/www/html/files/ &
    $ jobs
    $ disown  -h  %1
    $ jobs
    

    ທ່ານຍັງສາມາດໃຊ້ ຄຳ ສັ່ງ nohup ເຊິ່ງຍັງຊ່ວຍໃຫ້ຂະບວນການ ດຳ ເນີນການຕໍ່ເນື່ອງໃນພື້ນຫລັງເມື່ອຜູ້ໃຊ້ອອກຈາກຫອຍ.

    $ nohup tar -czf iso.tar.gz Templates/* &
    $ jobs
    

    ຄົ້ນຫາຂັ້ນຕອນຂອງ Linux ຈາກການຄວບຄຸມ Terminal

    ດັ່ງນັ້ນ, ເພື່ອແຍກຂະບວນການອອກຈາກສະຖານີຄວບຄຸມຢ່າງສົມບູນ, ໃຊ້ຮູບແບບ ຄຳ ສັ່ງຂ້າງລຸ່ມນີ້, ມັນຈະມີປະສິດຕິພາບຫຼາຍຂື້ນ ສຳ ລັບໂປແກຼມທີ່ໃຊ້ໃນການໂຕ້ຕອບຜູ້ໃຊ້ແບບກາຟິກ (GUI) ເຊັ່ນ firefox:

    $ firefox </dev/null &>/dev/null &
    

    ໃນ Linux,/dev/null ແມ່ນເອກະສານ ສຳ ລັບອຸປະກອນພິເສດທີ່ຂຽນອອກ (ກຳ ຈັດ) ຂໍ້ມູນທັງ ໝົດ ທີ່ຂຽນໃສ່ມັນ, ໃນ ຄຳ ສັ່ງຂ້າງເທິງ, ການປ້ອນຂໍ້ມູນແມ່ນອ່ານຈາກ, ແລະຜົນໄດ້ຮັບຈະຖືກສົ່ງໄປທີ່/dev/null.

    ໃນຖານະເປັນຂໍ້ສະຫລຸບທີ່ສະ ເໜີ, ຂັ້ນຕອນທີ່ສະ ໜອງ ໃຫ້ແມ່ນເຊື່ອມຕໍ່ກັບສະຖານີຄວບຄຸມ, ໃນຖານະຜູ້ໃຊ້, ທ່ານຈະເຫັນສາຍຜົນຜະລິດຫຼາຍຂໍ້ມູນຂອງຂໍ້ມູນກ່ຽວກັບຂະບວນການພ້ອມທັງຂໍ້ຄວາມຜິດພາດຢູ່ປາຍທາງຂອງທ່ານ. ອີກເທື່ອ ໜຶ່ງ, ເມື່ອທ່ານປິດສະຖານີຄວບຄຸມ, ຂະບວນການແລະຂະບວນການຂອງເດັກນ້ອຍຂອງທ່ານຈະຖືກຢຸດ.

    ສິ່ງທີ່ ສຳ ຄັນ, ສຳ ລັບ ຄຳ ຖາມຫຼືຂໍ້ສັງເກດໃດໆກ່ຽວກັບຫົວຂໍ້ດັ່ງກ່າວ, ສາມາດຕິດຕໍ່ພວກເຮົາໂດຍໃຊ້ແບບຟອມ ຄຳ ເຫັນຂ້າງລຸ່ມນີ້.