20 ຄຳ ສັ່ງຂັ້ນສູງ ສຳ ລັບຜູ້ໃຊ້ Linux ລະດັບກາງ


ທ່ານອາດຈະໄດ້ເຫັນບົດຄວາມ ທຳ ອິດມີປະໂຫຍດຫຼາຍ, ບົດຄວາມນີ້ແມ່ນການຂະຫຍາຍ 20 ຄຳ ສັ່ງທີ່ເປັນປະໂຫຍດ ສຳ ລັບ Linux Newbies. ບົດຂຽນ ທຳ ອິດແມ່ນມີຈຸດປະສົງ ສຳ ລັບຄົນ ໃໝ່ ແລະບົດນີ້ແມ່ນ ສຳ ລັບຜູ້ ນຳ ໃຊ້ລະດັບປານກາງແລະຜູ້ ນຳ ໃຊ້ຂັ້ນສູງ. ນີ້ທ່ານຈະໄດ້ຮູ້ວິທີການປັບແຕ່ງການຄົ້ນຫາ, ຮູ້ຈັກຂັ້ນຕອນທີ່ ກຳ ລັງເຮັດໃນການຂ້າພວກມັນ, ວິທີການເຮັດໃຫ້ Linux ຂອງທ່ານຜະລິດຕະພັນແມ່ນລັກສະນະທີ່ ສຳ ຄັນແລະວິທີການລວບລວມໂປແກຼມ java, c ++, ໃນ nix.

21. ຄຳ ສັ່ງ: ຊອກຫາ

ຄົ້ນຫາ ສຳ ລັບເອກະສານທີ່ຢູ່ໃນໄດເລກະທໍລີທີ່ໃຫ້ໄວ້, ຕາມ ລຳ ດັບເລີ່ມຕົ້ນທີ່ໄດເລກະທໍລີພໍ່ແມ່ແລະຍ້າຍໄປທີ່ໄດເລກະທໍລີຍ່ອຍ.

[email :~# find -name *.sh 

./Desktop/load.sh 
./Desktop/test.sh 
./Desktop/shutdown.sh 
./Binary/firefox/run-mozilla.sh 
./Downloads/kdewebdev-3.5.8/quanta/scripts/externalpreview.sh 
./Downloads/kdewebdev-3.5.8/admin/doxygen.sh 
./Downloads/kdewebdev-3.5.8/admin/cvs.sh 
./Downloads/kdewebdev-3.5.8/admin/ltmain.sh 
./Downloads/wheezy-nv-install.sh

ໝາຍ ເຫດ: ຕົວເລືອກ \ "- name 'ເຮັດໃຫ້ກໍລະນີຄົ້ນຫາມີຄວາມລະອຽດ. (* ແມ່ນຕົວອັກສອນ ທຳ ມະດາແລະຄົ້ນຫາທຸກໆເອກະສານທີ່ມີສ່ວນຂະຫຍາຍ '.sh' ທ່ານສາມາດໃຊ້ຊື່ filename ຫຼືສ່ວນຂອງຊື່ file ເພື່ອປັບແຕ່ງຜົນຜະລິດ).

[email :~# find -iname *.SH ( find -iname *.Sh /  find -iname *.sH)

./Desktop/load.sh 
./Desktop/test.sh 
./Desktop/shutdown.sh 
./Binary/firefox/run-mozilla.sh 
./Downloads/kdewebdev-3.5.8/quanta/scripts/externalpreview.sh 
./Downloads/kdewebdev-3.5.8/admin/doxygen.sh 
./Downloads/kdewebdev-3.5.8/admin/cvs.sh 
./Downloads/kdewebdev-3.5.8/admin/ltmain.sh 
./Downloads/wheezy-nv-install.sh
[email :~# find -name *.tar.gz 

/var/www/modules/update/tests/aaa_update_test.tar.gz 
./var/cache/flashplugin-nonfree/install_flash_player_11_linux.i386.tar.gz 
./home/server/Downloads/drupal-7.22.tar.gz 
./home/server/Downloads/smtp-7.x-1.0.tar.gz 
./home/server/Downloads/noreqnewpass-7.x-1.2.tar.gz 
./usr/share/gettext/archive.git.tar.gz 
./usr/share/doc/apg/php.tar.gz 
./usr/share/doc/festival/examples/speech_pm_1.0.tar.gz 
./usr/share/doc/argyll/examples/spyder2.tar.gz 
./usr/share/usb_modeswitch/configPack.tar.gz

ໝາຍ ເຫດ: ຄຳ ສັ່ງຂ້າງເທິງນີ້ຄົ້ນຫາທຸກໆເອກະສານທີ່ມີສ່ວນຂະຫຍາຍ 'tar.gz' ຢູ່ໃນລະບົບຮາກແລະລາຍຊື່ຍ່ອຍທັງ ໝົດ ລວມທັງອຸປະກອນທີ່ຕິດຕັ້ງ.

ອ່ານຕົວຢ່າງເພີ່ມເຕີມຂອງ Linux ‘ຊອກຫາ’ ຄຳ ສັ່ງທີ່ 35 ຊອກຫາຕົວຢ່າງ Command ໃນ Linux

22. ຄຳ ສັ່ງ: grep

ຄຳ ສັ່ງ 'grep' ຄົ້ນຫາເອກະສານທີ່ໃຫ້ໄວ້ ສຳ ລັບສາຍທີ່ມີ ຄຳ ວ່າເສັ້ນ ຄຳ ຫລື ຄຳ ສັບທີ່ໃຫ້. ຄົ້ນຫາ ‘/ etc/passwd’ ສຳ ລັບຜູ້ໃຊ້ ‘tecmint’.

[email :~# grep tecmint /etc/passwd 

tecmint:x:1000:1000:Tecmint,,,:/home/tecmint:/bin/bash

ບໍ່ສົນໃຈກໍລະນີ ຄຳ ສັບແລະທຸກ ຄຳ ປະສົມອື່ນໆທີ່ມີຕົວເລືອກ '-i'.

[email :~# grep -i TECMINT /etc/passwd 

tecmint:x:1000:1000:Tecmint,,,:/home/tecmint:/bin/bash

ຄົ້ນຫາຄືນ ໃໝ່ (-r) i.

[email :~# grep -r "127.0.0.1" /etc/ 

/etc/vlc/lua/http/.hosts:127.0.0.1
/etc/speech-dispatcher/modules/ivona.conf:#IvonaServerHost "127.0.0.1"
/etc/mysql/my.cnf:bind-address		= 127.0.0.1
/etc/apache2/mods-available/status.conf:    Allow from 127.0.0.1 ::1
/etc/apache2/mods-available/ldap.conf:    Allow from 127.0.0.1 ::1
/etc/apache2/mods-available/info.conf:    Allow from 127.0.0.1 ::1
/etc/apache2/mods-available/proxy_balancer.conf:#    Allow from 127.0.0.1 ::1
/etc/security/access.conf:#+ : root : 127.0.0.1
/etc/dhcp/dhclient.conf:#prepend domain-name-servers 127.0.0.1;
/etc/dhcp/dhclient.conf:#  option domain-name-servers 127.0.0.1;
/etc/init/network-interface.conf:	ifconfig lo 127.0.0.1 up || true
/etc/java-6-openjdk/net.properties:# localhost & 127.0.0.1).
/etc/java-6-openjdk/net.properties:# http.nonProxyHosts=localhost|127.0.0.1
/etc/java-6-openjdk/net.properties:# localhost & 127.0.0.1).
/etc/java-6-openjdk/net.properties:# ftp.nonProxyHosts=localhost|127.0.0.1
/etc/hosts:127.0.0.1	localhost

ໝາຍ ເຫດ: ທ່ານສາມາດໃຊ້ຕົວເລືອກຕໍ່ໄປນີ້ພ້ອມກັບ grep.

<

  • -w ສຳ ລັບ ຄຳ ສັບຕ່າງໆ (egrep -w 'word1 | word2'/path/to/file).
  • -c ສຳ ລັບນັບ (ຕົວຢ່າງ, ຈຳ ນວນເວລາທັງ ໝົດ ຂອງຮູບແບບທີ່ກົງກັນ) (grep -c 'ຄຳ ສັບ'/ເສັ້ນທາງ/ກັບ/ແຟ້ມ).
  • – ສີ ສຳ ລັບຜົນຜະລິດສີ (grep servercolor server/etc/passwd).
  • 23. ຄຳ ສັ່ງ: ຜູ້ຊາຍ

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

    [email :~# man man
    
    MAN(1)                                                               Manual pager utils                                                              MAN(1)
    
    NAME
           man - an interface to the on-line reference manuals
    
    SYNOPSIS
           man  [-C  file]  [-d]  [-D]  [--warnings[=warnings]]  [-R  encoding]  [-L  locale]  [-m  system[,...]]  [-M  path]  [-S list] [-e extension] [-i|-I]
           [--regex|--wildcard] [--names-only] [-a] [-u] [--no-subpages] [-P pager] [-r prompt] [-7] [-E encoding] [--no-hyphenation] [--no-justification]  [-p
           string] [-t] [-T[device]] [-H[browser]] [-X[dpi]] [-Z] [[section] page ...] ...
           man -k [apropos options] regexp ...
           man -K [-w|-W] [-S list] [-i|-I] [--regex] [section] term ...
           man -f [whatis options] page ...
           man -l [-C file] [-d] [-D] [--warnings[=warnings]] [-R encoding] [-L locale] [-P pager] [-r prompt] [-7] [-E encoding] [-p string] [-t] [-T[device]]
           [-H[browser]] [-X[dpi]] [-Z] file ...
           man -w|-W [-C file] [-d] [-D] page ...
           man -c [-C file] [-d] [-D] page ...
           man [-hV]

    ປື້ມຄູ່ມື ສຳ ລັບ ໜ້າ ຜູ້ຊາຍ, ຕົວຄ້າຍຄືກັນ 'ແມວຊາຍ' (ໜ້າ ຄູ່ມື ສຳ ລັບ ຄຳ ສັ່ງແມວ) ແລະ 'ຜູ້ຊາຍໃຊ້' (ໜ້າ ຄູ່ມື ສຳ ລັບ ຄຳ ສັ່ງ).

    ໝາຍ ເຫດ: ໜ້າ man ມີຈຸດປະສົງເພື່ອເປັນການອ້າງອີງແລະຮຽນຮູ້.

    24. ຄຳ ສັ່ງ: ps

    ps (Process) ໃຫ້ສະຖານະພາບຂອງການເຮັດວຽກທີ່ມີ Id ທີ່ເອີ້ນວ່າ PID.

    [email :~# ps
    
     PID TTY          TIME CMD
     4170 pts/1    00:00:00 bash
     9628 pts/1    00:00:00 ps

    ເພື່ອລາຍຊື່ສະຖານະຂອງຂະບວນການທັງ ໝົດ ພ້ອມກັບ id process ແລະ PID, ໃຫ້ໃຊ້ຕົວເລືອກ '-A -.

    [email :~# ps -A
    
     PID TTY          TIME CMD
        1 ?        00:00:01 init
        2 ?        00:00:00 kthreadd
        3 ?        00:00:01 ksoftirqd/0
        5 ?        00:00:00 kworker/0:0H
        7 ?        00:00:00 kworker/u:0H
        8 ?        00:00:00 migration/0
        9 ?        00:00:00 rcu_bh
    ....

    ໝາຍ ເຫດ: ຄຳ ສັ່ງນີ້ມີປະໂຫຍດຫລາຍເມື່ອທ່ານຢາກຮູ້ວ່າຂະບວນການໃດທີ່ ກຳ ລັງເຮັດວຽກຢູ່ຫລືອາດຈະຕ້ອງການ PID ບາງຄັ້ງ, ເພື່ອໃຫ້ຂັ້ນຕອນຖືກຂ້າ. ທ່ານສາມາດໃຊ້ມັນດ້ວຍ ຄຳ ສັ່ງ 'grep' ເພື່ອຊອກຫາຜົນຜະລິດຕາມໃຈມັກ. ຍົກຕົວຢ່າງ,

    [email :~# ps -A | grep -i ssh
    
     1500 ?        00:09:58 sshd
     4317 ?        00:00:00 sshd

    ນີ້ 'ps' ແມ່ນຖືກສັ່ງດ້ວຍ ຄຳ ສັ່ງ 'grep' ເພື່ອຊອກຫາຜົນຜະລິດທີ່ຖືກປັບແຕ່ງແລະກ່ຽວຂ້ອງກັບຄວາມຕ້ອງການຂອງພວກເຮົາ.

    25. ຄຳ ສັ່ງ: ຂ້າ

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

    ທ່ານຕ້ອງການ pid (ps) ຂອງຂະບວນການເພື່ອຂ້າມັນ.

    ໃຫ້ສົມມຸດວ່າທ່ານຕ້ອງການຂ້າໂປແກມ ‘apache2’ ທີ່ອາດຈະບໍ່ຕອບສະ ໜອງ. ດໍາເນີນການ 'ps -A' ພ້ອມກັບຄໍາສັ່ງ grep.

    [email :~# ps -A | grep -i apache2
    
    1285 ?        00:00:00 apache2

    ຊອກຫາຂະບວນການ 'apache2', ບັນທຶກ pid ຂອງມັນແລະຂ້າມັນ. ຍົກຕົວຢ່າງ, ໃນກໍລະນີຂອງຂ້ອຍ 'apache2' pid ແມ່ນ '1285'.

    [email :~# kill 1285 (to kill the process apache2)

    ໝາຍ ເຫດ: ທຸກໆຄັ້ງທີ່ທ່ານ ດຳ ເນີນຂັ້ນຕອນຫຼືເລີ່ມຕົ້ນລະບົບ ໃໝ່, pid ໃໝ່ ຈະຖືກສ້າງຂື້ນ ສຳ ລັບແຕ່ລະຂະບວນການແລະທ່ານສາມາດຮູ້ກ່ຽວກັບຂະບວນການທີ່ ກຳ ລັງແລ່ນຢູ່ໃນປະຈຸບັນແລະ pid ຂອງມັນໂດຍໃຊ້ ຄຳ ສັ່ງ ‘ps’.

    ອີກວິທີ ໜຶ່ງ ເພື່ອຂ້າຂະບວນການດຽວກັນແມ່ນ.

    [email :~# pkill apache2

    ໝາຍ ເຫດ: Kill ຕ້ອງການ id id/process ສຳ ລັບສົ່ງສັນຍານ, ເຊິ່ງໃນ pkill, ທ່ານມີທາງເລືອກໃນການ ນຳ ໃຊ້ຮູບແບບ, ລະບຸເຈົ້າຂອງຂະບວນການ, ແລະອື່ນໆ.

    26. ຄຳ ສັ່ງ: whereis

    ຄຳ ສັ່ງ ‘whereis’ ຖືກ ນຳ ໃຊ້ເພື່ອຊອກຫາຖານຂໍ້ມູນ Binary, ແຫຼ່ງຂໍ້ມູນແລະປື້ມຄູ່ມືຂອງ ຄຳ ສັ່ງ. ຍົກຕົວຢ່າງ, ເພື່ອຊອກຫາຖານສອງ, ແຫຼ່ງຂໍ້ມູນແລະ ໜ້າ ທີ່ຄູ່ມືຂອງ ຄຳ ສັ່ງ 'ແລະ' ຂ້າ '.

    [email :~# whereis ls 
    
    ls: /bin/ls /usr/share/man/man1/ls.1.gz
    [email :~# whereis kill
    
    kill: /bin/kill /usr/share/man/man2/kill.2.gz /usr/share/man/man1/kill.1.gz

    ໝາຍ ເຫດ: ມັນເປັນປະໂຫຍດທີ່ຈະຮູ້ວ່າບ່ອນໃດທີ່ຕິດຕັ້ງໄບນາລີເພື່ອການແກ້ໄຂດ້ວຍຕົນເອງບາງຄັ້ງ.

    27. ຄຳ ສັ່ງ: ການບໍລິການ

    ຄຳ ສັ່ງ ‘ການບໍລິການ’ ຄວບຄຸມການເລີ່ມຕົ້ນ, ການຢຸດຫຼືການເລີ່ມຕົ້ນຂອງການບໍລິການ ‘. ຄຳ ສັ່ງນີ້ເຮັດໃຫ້ມັນສາມາດເລີ່ມຕົ້ນ, ເລີ່ມຕົ້ນ ໃໝ່ ຫລືຢຸດບໍລິການໂດຍບໍ່ຕ້ອງເລີ່ມຕົ້ນລະບົບອີກຄັ້ງ, ສຳ ລັບການປ່ຽນແປງຈະຖືກ ນຳ ໃຊ້.

    [email :~# service apache2 start
    
     * Starting web server apache2                                                                                                                                 apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
    httpd (pid 1285) already running						[ OK ]
    [email :~# service apache2 restart
    
    * Restarting web server apache2                                                                                                                               apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
     ... waiting .apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName  [ OK ]
    [email :~# service apache2 stop
    
     * Stopping web server apache2                                                                                                                                 apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
     ... waiting                                                           		[ OK ]

    ໝາຍ ເຫດ: ບົດຂຽນທັງ ໝົດ ຂອງຂະບວນການແມ່ນຢູ່ໃນ '/etc/init.d' ແລະເສັ້ນທາງອາດຈະຕ້ອງໄດ້ລວມເຂົ້າໃນລະບົບສະເພາະບາງຢ່າງ, ເຖິງວ່າຈະມີການແລ່ນ“ ການບໍລິການ apache2 ເລີ່ມຕົ້ນ” ທ່ານກໍ່ຈະຖືກຮ້ອງຂໍໃຫ້ ດຳ ເນີນການ“/etc/init.d/apache2 ເລີ່ມຕົ້ນ”.

    28. ຄຳ ສັ່ງ: ນາມແຝງ

    alias ແມ່ນ ຄຳ ສັ່ງທີ່ສ້າງຂຶ້ນໃນ shell ເຊິ່ງຊ່ວຍໃຫ້ທ່ານສາມາດ ກຳ ນົດຊື່ ສຳ ລັບ ຄຳ ສັ່ງທີ່ຍາວນານຫຼື ຄຳ ສັ່ງທີ່ໃຊ້ກັນເລື້ອຍໆ.

    ຂ້ອຍໃຊ້ ຄຳ ສັ່ງທີ່ໃຊ້ເລື້ອຍໆ, ເຊິ່ງລວມມີ 5 ຕົວອັກສອນລວມທັງພື້ນທີ່. ເພາະສະນັ້ນຂ້າພະເຈົ້າໄດ້ສ້າງນາມແຝງ ສຳ ລັບສິ່ງນີ້ເພື່ອ 'ຂ້ອຍ'.

    [email :~# alias l='ls -l'

    ກວດເບິ່ງວ່າມັນເຮັດວຽກຫຼືບໍ່.

    [email :~# l
    
    total 36 
    drwxr-xr-x 3 tecmint tecmint 4096 May 10 11:14 Binary 
    drwxr-xr-x 3 tecmint tecmint 4096 May 21 11:21 Desktop 
    drwxr-xr-x 2 tecmint tecmint 4096 May 21 15:23 Documents 
    drwxr-xr-x 8 tecmint tecmint 4096 May 20 14:56 Downloads 
    drwxr-xr-x 2 tecmint tecmint 4096 May  7 16:58 Music 
    drwxr-xr-x 2 tecmint tecmint 4096 May 20 16:17 Pictures 
    drwxr-xr-x 2 tecmint tecmint 4096 May  7 16:58 Public 
    drwxr-xr-x 2 tecmint tecmint 4096 May  7 16:58 Templates 
    drwxr-xr-x 2 tecmint tecmint 4096 May  7 16:58 Videos

    ເພື່ອ ກຳ ຈັດນາມແຝງ 'l', ໃຫ້ໃຊ້ ຄຳ ສັ່ງ 'unalias' ຕໍ່ໄປນີ້.

    [email :~# unalias l

    ກວດເບິ່ງ, ຖ້າວ່າ "ຂ້ອຍຍັງມີນາມແຝງຫຼືບໍ່.

    [email :~# l
    
    bash: l: command not found

    ການສ້າງຄວາມມ່ວນເລັກນ້ອຍອອກຈາກ ຄຳ ສັ່ງນີ້. ສ້າງນາມແຝງຂອງ ຄຳ ສັ່ງທີ່ ສຳ ຄັນບາງ ຄຳ ສັ່ງທີ່ ສຳ ຄັນອື່ນໆ.

    alias cd='ls -l' (set alias of ls -l to cd)
    alias su='pwd' (set alias of pwd to su)
    ....
    (You can create your own)
    ....

    ດຽວນີ້ເມື່ອເພື່ອນຂອງທ່ານປະເພດ 'cd', ພຽງແຕ່ຄິດວ່າມັນຈະເປັນການຕະຫລົກຫລາຍປານໃດເມື່ອລາວໄດ້ຮັບລາຍຊື່ໄດເລກະທໍລີແລະບໍ່ມີການປ່ຽນເສັ້ນທາງ. ແລະໃນເວລາທີ່ລາວພະຍາຍາມທີ່ຈະເປັນ“ ທຸກສິ່ງທຸກຢ່າງທີ່ລາວໄດ້ຮັບແມ່ນສະຖານທີ່ເຮັດວຽກຢູ່ບ່ອນເຮັດວຽກ. ທ່ານສາມາດລຶບນາມແຝງຕໍ່ມາໂດຍໃຊ້ ຄຳ ສັ່ງ ‘unalias’ ດັ່ງທີ່ໄດ້ອະທິບາຍຂ້າງເທິງ.

    29. ຄຳ ສັ່ງ: df

    ລາຍງານການໃຊ້ແຜ່ນຂອງລະບົບແຟ້ມ. ມີປະໂຫຍດ ສຳ ລັບຜູ້ໃຊ້ກໍ່ຄື System Administrator ເພື່ອຕິດຕາມການ ນຳ ໃຊ້ແຜ່ນຂອງພວກເຂົາ. "ຖ້າທ່ານເຮັດວຽກໂດຍການກວດເບິ່ງລາຍຊື່ໄດເລກະທໍລີ, ເຊິ່ງໂດຍທົ່ວໄປແລ້ວຈະຖືກປັບປຸງພຽງແຕ່ເມື່ອເອກະສານຖືກປິດ.

    [email :~# df
    
    Filesystem     1K-blocks    Used Available Use% Mounted on
    /dev/sda1       47929224 7811908  37675948  18% /
    none                   4       0         4   0% /sys/fs/cgroup
    udev             1005916       4   1005912   1% /dev
    tmpfs             202824     816    202008   1% /run
    none                5120       0      5120   0% /run/lock
    none             1014120     628   1013492   1% /run/shm
    none              102400      44    102356   1% /run/user
    /dev/sda5         184307   79852     94727  46% /boot
    /dev/sda7       95989516   61104  91045676   1% /data
    /dev/sda8       91953192   57032  87218528   1% /personal

    ສຳ ລັບຕົວຢ່າງເພີ່ມເຕີມຂອງ ຄຳ ສັ່ງ 'df', ອ່ານບົດທີ່ 12 df ຕົວຢ່າງ ຄຳ ສັ່ງໃນ Linux.

    30. ຄຳ ສັ່ງ: du

    ການ ນຳ ໃຊ້ພື້ນທີ່ຂອງເອກະສານປະມານ. ຜົນຜະລິດສະຫຼຸບສັງລວມຂອງການ ນຳ ໃຊ້ແຜ່ນໂດຍການຍື່ນເອກະສານແບບ ລຳ ດັບ, i.e. , ໃນລັກສະນະອ້າງອີງ.

    [email :~# du
    
    8       ./Daily Pics/wp-polls/images/default_gradient
    8       ./Daily Pics/wp-polls/images/default
    32      ./Daily Pics/wp-polls/images
    8       ./Daily Pics/wp-polls/tinymce/plugins/polls/langs
    8       ./Daily Pics/wp-polls/tinymce/plugins/polls/img
    28      ./Daily Pics/wp-polls/tinymce/plugins/polls
    32      ./Daily Pics/wp-polls/tinymce/plugins
    36      ./Daily Pics/wp-polls/tinymce
    580     ./Daily Pics/wp-polls
    1456    ./Daily Pics
    36      ./Plugins/wordpress-author-box
    16180   ./Plugins
    12      ./May Articles 2013/Xtreme Download Manager
    4632    ./May Articles 2013/XCache

    ໝາຍ ເຫດ: 'ພຽງແຕ່ລາຍງານສະຖິຕິການ ນຳ ໃຊ້ໃນລະບົບແຟ້ມເອກະສານ, ໃນຂະນະທີ່ "du", ວັດແທກເນື້ອໃນຂອງລະບົບ. ສຳ ລັບຕົວຢ່າງແລະ ຄຳ ສັ່ງທີ່ໃຊ້ຫຼາຍກວ່າເກົ່າ, ໃຫ້ອ່ານ ຄຳ ສັ່ງ 10 du (Disk Usage).

    31. ຄຳ ສັ່ງ: rm

    ຄຳ ສັ່ງ 'rm' ໝາຍ ເຖິງການ ກຳ ຈັດ. rm ຖືກໃຊ້ເພື່ອເອົາແຟ້ມແລະໄດເລກະທໍລີ.

    [email :~# rm PassportApplicationForm_Main_English_V1.0
    
    rm: cannot remove `PassportApplicationForm_Main_English_V1.0': Is a directory

    ໄດເລກະທໍລີບໍ່ສາມາດຖືກຍ້າຍອອກງ່າຍໆໂດຍ ຄຳ ສັ່ງ 'rm', ທ່ານຕ້ອງໃຊ້ '-rf' ປ່ຽນພ້ອມກັບ 'rm'.

    [email :~# rm -rf PassportApplicationForm_Main_English_V1.0

    ຄຳ ເຕືອນ:“ rm-rf” ຄຳ ສັ່ງແມ່ນ ຄຳ ສັ່ງທີ່ ທຳ ລາຍຖ້າບັງເອີນທ່ານເຮັດໃຫ້ມັນຢູ່ໃນໄດເລກະທໍລີທີ່ບໍ່ຖືກຕ້ອງ. ເມື່ອທ່ານ ກຳ ລັງຮວບຮວມໄຟລ໌ທັງ ໝົດ ແລະໄດເລກະທໍລີເອງຈະສູນເສຍຕະຫຼອດໄປ, ທັນທີທັນໃດ. ໃຊ້ມັນດ້ວຍຄວາມລະມັດລະວັງ.

    32. ຄຳ ສັ່ງ: ແອັກໂກ້

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

    [email :~# echo "linux-console.net is a very good website" 
    
    linux-console.net is a very good website

    1. ສ້າງແຟ້ມເອກະສານ, ໃສ່ຊື່ 'interactive_shell.sh' ເທິງ ໜ້າ ຈໍ. (ຈື່ໄວ້ວ່າ '.sh' ການຂະຫຍາຍຕ້ອງແມ່ນ).
    2. ສຳ ເນົາແລະວາງສະຄິບຂ້າງລຸ່ມ, ຄືກັນກັບດັ່ງລຸ່ມນີ້.

    #!/bin/bash 
    echo "Please enter your name:" 
       read name 
       echo "Welcome to Linux $name"

    ຕໍ່ໄປ, ຕັ້ງການປະຕິບັດການອະນຸຍາດແລະ ດຳ ເນີນການສະຄິບ.

    [email :~# chmod 777 interactive_shell.sh
    [email :~# ./interactive_shell.sh
    
    Please enter your name:
    Ravi Saive
    Welcome to Linux Ravi Saive

    ໝາຍ ເຫດ: ‘#!/bin/bash‘ ບອກຫອຍວ່າມັນແມ່ນສະຄິບທີ່ມັນເປັນຄວາມຄິດທີ່ດີທີ່ຈະລວມເອົາມັນຢູ່ເທິງສຸດຂອງບົດຂຽນ. 'ອ່ານ' ອ່ານ ຄຳ ແນະ ນຳ ທີ່ໃຫ້ໄວ້.

    33. ຄຳ ສັ່ງ: passwd

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

    [email :~# passwd 
    
    Changing password for tecmint. 
    (current) UNIX password: ******** 
    Enter new UNIX password: ********
    Retype new UNIX password: ********
    Password unchanged   [Here was passowrd remians unchanged, i.e., new password=old password]
    Enter new UNIX password: #####
    Retype new UNIX password:#####

    34. ຄຳ ສັ່ງ: lpr

    ຄຳ ສັ່ງພິມ ຄຳ ສັ່ງນີ້ມີຊື່ໃສ່ແຖວ ຄຳ ສັ່ງ, ເພື່ອຕັ້ງຊື່ເຄື່ອງພິມ.

    [email :~# lpr -P deskjet-4620-series 1-final.pdf

    ໝາຍ ເຫດ: ຄຳ ສັ່ງ 'lpq' ຊ່ວຍໃຫ້ທ່ານສາມາດເບິ່ງສະຖານະພາບຂອງເຄື່ອງພິມ (ບໍ່ວ່າຈະຂຶ້ນຫລືບໍ່), ແລະວຽກຕ່າງໆ (ເອກະສານ) ທີ່ລໍຖ້າການພິມ.

    35. ຄຳ ສັ່ງ: cmp

    ປຽບທຽບສອງເອກະສານຂອງປະເພດໃດແລະຂຽນຜົນໄດ້ຮັບໃຫ້ກັບຜົນໄດ້ຮັບມາດຕະຖານ. ໂດຍຄ່າເລີ່ມຕົ້ນ, 'cmp' ກັບຄືນ 0 ຖ້າແຟ້ມຄືກັນ; ຖ້າມັນແຕກຕ່າງກັນ, ບົດລາຍງານຂອງໄບຕ໌ແລະເສັ້ນທີ່ຄວາມແຕກຕ່າງຄັ້ງ ທຳ ອິດເກີດຂື້ນ.

    ເພື່ອເປັນຕົວຢ່າງ ສຳ ລັບ ຄຳ ສັ່ງນີ້, ໃຫ້ພິຈາລະນາສອງເອກະສານ:

    [email :~# cat file1.txt
    
    Hi My name is Tecmint
    [email :~# cat file2.txt
    
    Hi My name is tecmint [dot] com

    ບັດນີ້, ສົມທຽບສອງເອກະສານແລະເບິ່ງຜົນຜະລິດຂອງ ຄຳ ສັ່ງ.

    [email :~# cmp file1.txt file2.txt 
    
    file1.txt file2.txt differ: byte 15, line 1

    36. ຄຳ ສັ່ງ: wget

    Wget ແມ່ນປະໂຫຍດທີ່ບໍ່ເສຍຄ່າ ສຳ ລັບຜູ້ທີ່ບໍ່ມີການໂຕ້ຕອບ (ເຊັ່ນ, ສາມາດເຮັດວຽກຢູ່ໃນພື້ນຫລັງ) ການດາວໂຫລດໄຟລ໌ຈາກເວບໄຊທ໌. ມັນສະຫນັບສະຫນູນ HTTP, HTTPS, ໂປໂຕຄອນ FTP ແລະໂປແກຼມ HTTP.

    [email :~# wget http://downloads.sourceforge.net/project/ffmpeg-php/ffmpeg-php/0.6.0/ffmpeg-php-0.6.0.tbz2
    
    --2013-05-22 18:54:52--  http://downloads.sourceforge.net/project/ffmpeg-php/ffmpeg-php/0.6.0/ffmpeg-php-0.6.0.tbz2
    Resolving downloads.sourceforge.net (downloads.sourceforge.net)... 216.34.181.59
    Connecting to downloads.sourceforge.net (downloads.sourceforge.net)|216.34.181.59|:80... connected.
    HTTP request sent, awaiting response... 302 Found
    Location: http://kaz.dl.sourceforge.net/project/ffmpeg-php/ffmpeg-php/0.6.0/ffmpeg-php-0.6.0.tbz2 [following]
    --2013-05-22 18:54:54--  http://kaz.dl.sourceforge.net/project/ffmpeg-php/ffmpeg-php/0.6.0/ffmpeg-php-0.6.0.tbz2
    Resolving kaz.dl.sourceforge.net (kaz.dl.sourceforge.net)... 92.46.53.163
    Connecting to kaz.dl.sourceforge.net (kaz.dl.sourceforge.net)|92.46.53.163|:80... connected.
    HTTP request sent, awaiting response... 200 OK
    Length: 275557 (269K) [application/octet-stream]
    Saving to: ‘ffmpeg-php-0.6.0.tbz2’
    
    100%[===========================================================================>] 2,75,557    67.8KB/s   in 4.0s   
    
    2013-05-22 18:55:00 (67.8 KB/s) - ‘ffmpeg-php-0.6.0.tbz2’ saved [275557/275557]

    37. ຄຳ ສັ່ງ: mount

    Mount ແມ່ນ ຄຳ ສັ່ງທີ່ ສຳ ຄັນທີ່ໃຊ້ໃນການຕິດຕັ້ງລະບົບແຟ້ມເອກະສານທີ່ບໍ່ຕິດໂຕເອງ. ທ່ານຕ້ອງການການອະນຸຍາດຮາກເພື່ອຕິດຕັ້ງອຸປະກອນ.

    ທຳ ອິດແລ່ນ 'lsblk' ຫຼັງຈາກສຽບເຂົ້າລະບົບແຟ້ມເອກະສານຂອງທ່ານແລະລະບຸອຸປະກອນຂອງທ່ານແລະບັນທຶກຊື່ເຄື່ອງທີ່ທ່ານມອບ ໝາຍ ໃຫ້.

    [email :~# lsblk 
    
    NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT 
    sda      8:0    0 931.5G  0 disk 
    ├─sda1   8:1    0 923.6G  0 part / 
    ├─sda2   8:2    0     1K  0 part 
    └─sda5   8:5    0   7.9G  0 part [SWAP] 
    sr0     11:0    1  1024M  0 rom  
    sdb      8:16   1   3.7G  0 disk 
    └─sdb1   8:17   1   3.7G  0 part

    ຈາກ ໜ້າ ຈໍນີ້ເຫັນໄດ້ຊັດເຈນວ່າຂ້ອຍສຽບໃນ pendrive 4 GB ດັ່ງນັ້ນ 'sdb1' ແມ່ນລະບົບແຟ້ມຂອງຂ້ອຍທີ່ຈະຕິດຕັ້ງ. ກາຍເປັນຮາກເພື່ອປະຕິບັດການປະຕິບັດງານນີ້ແລະປ່ຽນເປັນ/ໄດເລກະທໍລີທີ່ລະບົບເອກະສານທັງ ໝົດ ຖືກຕິດຕັ້ງ.

    [email :~# su
    Password:
    [email :~# cd /dev

    ສ້າງໄດເລກະທໍລີທີ່ມີຊື່ວ່າບໍ່ມີຫຍັງແຕ່ຄວນຈະເປັນຕົວແທນ ສຳ ລັບການອ້າງອີງ.

    [email :~# mkdir usb

    ດຽວນີ້ຕິດຕັ້ງລະບົບແຟ້ມເອກະສານ 'sdb1' ເພື່ອ ກຳ ນົດ 'usb'.

    [email :~# mount /dev/sdb1 /dev/usb

    ຕອນນີ້ທ່ານສາມາດໄປຫາ/dev/usb ຈາກລະບົບປາຍທາງຫລືລະບົບ X-windows ແລະເອກະສານ acess ຈາກໄດເລກະທໍລີທີ່ຕິດຕັ້ງ.

    38. ຄຳ ສັ່ງ: gcc

    gcc ແມ່ນຕົວ ກຳ ນົດສ້າງ ສຳ ລັບພາສາ 'c' ໃນ Linux Environment. ໂປແກຼມງ່າຍໆ c, ບັນທຶກມັນໄວ້ໃນ ur desktop ຄື Hello.c (ຈື່ 'ຕ້ອງໄດ້ຂະຫຍາຍ).

    #include <stdio.h>
    int main()
    {
      printf("Hello world\n");
      return 0;
    }
    [email :~# gcc Hello.c
    [email :~# ./a.out 
    
    Hello world

    ໝາຍ ເຫດ: ໃນການລວບລວມໂປແກຼມ c, ຜົນຜະລິດຈະຖືກຜະລິດໂດຍອັດຕະໂນມັດໄປທີ່ເອກະສານ ໃໝ່“ a.out” ແລະທຸກໆຄັ້ງທີ່ທ່ານລວບລວມໂປຣແກຣມ c ດຽວກັນ“ a.out” ຈະຖືກດັດແປງ. ສະນັ້ນມັນເປັນ ຄຳ ແນະ ນຳ ທີ່ດີທີ່ຈະ ກຳ ນົດເອກະສານຜົນຜະລິດໃນລະຫວ່າງການລວບລວມແລະດັ່ງນັ້ນມັນຈຶ່ງບໍ່ມີຄວາມສ່ຽງທີ່ຈະຂຽນທັບກັບເອກະສານຜົນຜະລິດ.

    [email :~# gcc -o Hello Hello.c

    ນີ້ '- ບໍ່' ສົ່ງຜົນໄດ້ຮັບໄປທີ່ 'ສະບາຍດີ' ແຟ້ມແລະບໍ່ແມ່ນ 'a.out'. ດໍາເນີນການມັນອີກເທື່ອຫນຶ່ງ.

    [email :~# ./Hello 
    
    Hello world

    39. ຄຳ ສັ່ງ: g ++

    g. ໂປແກຼມ c ++ ທີ່ລຽບງ່າຍ, ບັນທຶກມັນໄວ້ໃນ ur desktop ເປັນ Add.cpp (ຈື່ 'ຕ້ອງການຂະຫຍາຍ).

    #include <iostream>
    
    using namespace std;
    
    int main() 
        {
              int a;
              int b;
              cout<<"Enter first number:\n";
              cin >> a;
              cout <<"Enter the second number:\n";
              cin>> b;
              cin.ignore();
              int result = a + b;
              cout<<"Result is"<<"  "<<result<<endl;
              cin.get();
              return 0;
         }
    [email :~# g++ Add.cpp
    [email :~# ./a.out
    
    Enter first number: 
    ...
    ...

    ໝາຍ ເຫດ: ໃນການລວບລວມໂປແກຼມ c ++ ຜົນຜະລິດຈະຖືກຜະລິດໂດຍອັດຕະໂນມັດໄປທີ່ເອກະສານ ໃໝ່“ a.out” ແລະທຸກໆຄັ້ງທີ່ທ່ານລວບລວມໂປແກຼມ c ++ ດຽວກັນ“ a.out” ຈະຖືກດັດແປງ. ສະນັ້ນມັນເປັນ ຄຳ ແນະ ນຳ ທີ່ດີທີ່ຈະ ກຳ ນົດເອກະສານຜົນຜະລິດໃນລະຫວ່າງການລວບລວມແລະດັ່ງນັ້ນມັນຈຶ່ງບໍ່ມີຄວາມສ່ຽງທີ່ຈະຂຽນທັບກັບເອກະສານຜົນຜະລິດ.

    [email :~# g++ -o Add Add.cpp
    [email :~# ./Add 
    
    Enter first number: 
    ...
    ...

    40. ຄຳ ສັ່ງ: java

    Java ແມ່ນ ໜຶ່ງ ໃນພາສາການຂຽນໂປແກຼມທີ່ໃຊ້ໃນທົ່ວໂລກແລະຖືກຖືວ່າເປັນໄວ, ປອດໄພແລະເຊື່ອຖືໄດ້. ການບໍລິການທີ່ອີງໃສ່ເວບໄຊທ໌ສ່ວນໃຫຍ່ຂອງມື້ນີ້ແມ່ນໃຊ້ກັບຈາວາ.

    ສ້າງໂປແກຼມ java ແບບງ່າຍໆໂດຍການທົດສອບການທົດສອບຂ້າງລຸ່ມໄປຫາແຟ້ມ, ຊື່ວ່າ tecmint.java (ຈື່ວ່າ '.java' ຕ້ອງມີການຂະຫຍາຍ).

    class tecmint {
      public static void main(String[] arguments) {
        System.out.println("Tecmint ");
      }
    }
    [email :~# javac tecmint.java
    [email :~# java tecmint

    ໝາຍ ເຫດ: ເກືອບທຸກໆການແຈກຈ່າຍແມ່ນມາພ້ອມກັບ gcc compiler, ສ່ວນໃຫຍ່ຂອງ distros ມີ g ++ ແລະ java compiler, ໃນຂະນະທີ່ບາງຕົວບໍ່ມີ. ທ່ານສາມາດ apt ຫຼື yum ຊຸດທີ່ຕ້ອງການ.

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