Pagdumala sa mga File Epektibo nga gamit ang ulo, ikog ug iring nga mga Sugo sa Linux


Adunay daghang mga sugo ug mga programa nga gihatag sa Linux para sa pagtan-aw sa sulod sa file. Ang pagtrabaho sa mga file usa sa makahahadlok nga buluhaton, kadaghanan sa mga tiggamit sa kompyuter bag-o lang, regular nga tiggamit, advanced user, developer, admin, ug uban pa. Ang pagtrabaho sa mga file nga epektibo ug epektibo usa ka arte.

Karon, niining artikuloha atong hisgotan ang labing popular nga mga sugo nga gitawag ug ulo, ikog ug iring, kadaghanan kanato nahibalo na sa maong mga sugo, apan diyutay ra kanato ang nagpatuman niini kon gikinahanglan.

1. ulo Sugo

Ang head command nagbasa sa unang napulo ka linya sa bisan unsang gihatag nga ngalan sa file. Ang sukaranan nga syntax sa head command mao ang:

head [options] [file(s)]

Pananglitan, ang mosunod nga sugo magpakita sa unang napulo ka linya sa file nga ginganlan og '/etc/passwd'.

# head /etc/passwd 

root:x:0:0:root:/root:/bin/bash 
daemon:x:1:1:daemon:/usr/sbin:/bin/sh 
bin:x:2:2:bin:/bin:/bin/sh 
sys:x:3:3:sys:/dev:/bin/sh 
sync:x:4:65534:sync:/bin:/bin/sync 
games:x:5:60:games:/usr/games:/bin/sh 
man:x:6:12:man:/var/cache/man:/bin/sh 
lp:x:7:7:lp:/var/spool/lpd:/bin/sh 
mail:x:8:8:mail:/var/mail:/bin/sh 
news:x:9:9:news:/var/spool/news:/bin/sh

Kung labaw pa sa usa ka file ang gihatag, ang ulo magpakita sa una nga napulo ka linya sa matag file nga gilain. Pananglitan, ang mosunod nga sugo magpakita sa napulo ka linya sa matag file.

# head /etc/passwd /etc/shadow

==> /etc/passwd <== root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin adm:x:3:4:adm:/var/adm:/sbin/nologin lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin sync:x:5:0:sync:/sbin:/bin/sync shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown halt:x:7:0:halt:/sbin:/sbin/halt mail:x:8:12:mail:/var/spool/mail:/sbin/nologin uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin ==> /etc/shadow <==
root:$6$85e1:15740:0:99999:7:::
bin:*:15513:0:99999:7:::
daemon:*:15513:0:99999:7:::
adm:*:15513:0:99999:7:::
lp:*:15513:0:99999:7:::
sync:*:15513:0:99999:7:::
shutdown:*:15513:0:99999:7:::
halt:*:15513:0:99999:7:::
mail:*:15513:0:99999:7:::
uucp:*:15513:0:99999:7:::

Kung gusto nga makuha ang daghang mga linya kaysa sa default nga napulo, unya ang '-n' nga kapilian gigamit kauban ang usa ka integer nga nagsulti sa gidaghanon sa mga linya nga makuha. Pananglitan, ang mosunod nga sugo magpakita sa unang 5 ka linya gikan sa file nga '/var/log/yum.log' file.

# head -n5 /var/log/yum.log

Jan 10 00:06:49 Updated: openssl-1.0.1e-16.el6_5.4.i686
Jan 10 00:06:56 Updated: openssl-devel-1.0.1e-16.el6_5.4.i686
Jan 10 00:11:42 Installed: perl-Net-SSLeay-1.35-9.el6.i686
Jan 13 22:13:31 Installed: python-configobj-4.6.0-3.el6.noarch
Jan 13 22:13:36 Installed: terminator-0.95-3.el6.rf.noarch

Sa tinuud, dili kinahanglan nga gamiton ang '-n' nga kapilian. Ang hyphen lang ug ipiho ang integer nga walay mga luna aron makuha ang parehas nga resulta sa sugo sa ibabaw.

# head  -5 /var/log/yum.log

Jan 10 00:06:49 Updated: openssl-1.0.1e-16.el6_5.4.i686
Jan 10 00:06:56 Updated: openssl-devel-1.0.1e-16.el6_5.4.i686
Jan 10 00:11:42 Installed: perl-Net-SSLeay-1.35-9.el6.i686
Jan 13 22:13:31 Installed: python-configobj-4.6.0-3.el6.noarch
Jan 13 22:13:36 Installed: terminator-0.95-3.el6.rf.noarch

Ang head command mahimo usab nga magpakita sa bisan unsang gusto nga gidaghanon sa mga byte gamit ang '-c' nga kapilian nga gisundan sa gidaghanon sa mga byte nga ipakita. Pananglitan, ang mosunod nga sugo magpakita sa unang 45 ka bytes sa gihatag nga file.

# head -c45 /var/log/yum.log

Jan 10 00:06:49 Updated: openssl-1.0.1e-16.el

2. ikog Command

Ang tail command nagtugot kanimo sa pagpakita sa katapusang napulo ka linya sa bisan unsang text file. Sama sa head command sa ibabaw, ang tail command nagsuporta usab sa mga opsyon  ‘n’ nga gidaghanon sa mga linya ug ‘n’ nga gidaghanon sa mga karakter.

Ang sukaranan nga syntax sa tail command mao ang:

# tail [options] [filenames]

Pananglitan, ang mosunod nga sugo mag-imprinta sa katapusang napulo ka linya sa usa ka file nga gitawag og 'access.log'.

# tail access.log 

1390288226.042      0 172.16.18.71 TCP_DENIED/407 1771 GET http://download.newnext.me/spark.bin? - NONE/- text/html
1390288226.198      0 172.16.16.55 TCP_DENIED/407 1753 CONNECT ent-shasta-rrs.symantec.com:443 - NONE/- text/html
1390288226.210   1182 172.16.20.44 TCP_MISS/200 70872 GET http://mahavat.gov.in/Mahavat/index.jsp pg DIRECT/61.16.223.197 text/html
1390288226.284     70 172.16.20.44 TCP_MISS/304 269 GET http://mahavat.gov.in/Mahavat/i/i-19.gif pg DIRECT/61.16.223.197 -
1390288226.362    570 172.16.176.139 TCP_MISS/200 694 GET http://p4-gayr4vyqxh7oa-3ekrqzjikvrczq44-if-v6exp3-v4.metric.gstatic.com/v6exp3/redir.html pg 
1390288226.402      0 172.16.16.55 TCP_DENIED/407 1753 CONNECT ent-shasta-rrs.symantec.com:443 - NONE/- text/html
1390288226.437    145 172.16.18.53 TCP_DENIED/407 1723 OPTIONS http://172.16.25.252/ - NONE/- text/html
1390288226.445      0 172.16.18.53 TCP_DENIED/407 1723 OPTIONS http://172.16.25.252/ - NONE/- text/html
1390288226.605      0 172.16.16.55 TCP_DENIED/407 1753 CONNECT ent-shasta-rrs.symantec.com:443 - NONE/- text/html
1390288226.808      0 172.16.16.55 TCP_DENIED/407 1753 CONNECT ent-shasta-rrs.symantec.com:443 - NONE/- text/html

Kung labaw pa sa usa ka file ang gihatag, ang ikog mag-imprinta sa katapusang napulo ka linya sa matag file sama sa gipakita sa ubos.

# tail access.log error.log

==> access.log <== 1390288226.042      0 172.16.18.71 TCP_DENIED/407 1771 GET http://download.newnext.me/spark.bin? - NONE/- text/html 1390288226.198      0 172.16.16.55 TCP_DENIED/407 1753 CONNECT ent-shasta-rrs.symantec.com:443 - NONE/- text/html 1390288226.210   1182 172.16.20.44 TCP_MISS/200 70872 GET http://mahavat.gov.in/Mahavat/index.jsp pg DIRECT/61.16.223.197 text/html 1390288226.284     70 172.16.20.44 TCP_MISS/304 269 GET http://mahavat.gov.in/Mahavat/i/i-19.gif pg DIRECT/61.16.223.197 - 1390288226.362    570 172.16.176.139 TCP_MISS/200 694 GET http://p4-gayr4vyqxh7oa-3ekrqzjikvrczq44-if-v6exp3-v4.metric.gstatic.com/v6exp3/redir.html pg  1390288226.402      0 172.16.16.55 TCP_DENIED/407 1753 CONNECT ent-shasta-rrs.symantec.com:443 - NONE/- text/html 1390288226.437    145 172.16.18.53 TCP_DENIED/407 1723 OPTIONS http://172.16.25.252/ - NONE/- text/html 1390288226.445      0 172.16.18.53 TCP_DENIED/407 1723 OPTIONS http://172.16.25.252/ - NONE/- text/html 1390288226.605      0 172.16.16.55 TCP_DENIED/407 1753 CONNECT ent-shasta-rrs.symantec.com:443 - NONE/- text/html 1390288226.808      0 172.16.16.55 TCP_DENIED/407 1753 CONNECT ent-shasta-rrs.symantec.com:443 - NONE/- text/html ==> error_log <==
[Sun Mar 30 03:16:03 2014] [notice] Digest: generating secret for digest authentication ...
[Sun Mar 30 03:16:03 2014] [notice] Digest: done
[Sun Mar 30 03:16:03 2014] [notice] Apache/2.2.15 (Unix) DAV/2 PHP/5.3.3 mod_ssl/2.2.15 OpenSSL/1.0.0-fips configured -- resuming normal operations

Sa susama, mahimo usab nimo i-print ang katapusang pila ka linya gamit ang '-n' nga kapilian sama sa gipakita sa ubos.

# tail -5 access.log

1390288226.402      0 172.16.16.55 TCP_DENIED/407 1753 CONNECT ent-shasta-rrs.symantec.com:443 - NONE/- text/html
1390288226.437    145 172.16.18.53 TCP_DENIED/407 1723 OPTIONS http://172.16.25.252/ - NONE/- text/html
1390288226.445      0 172.16.18.53 TCP_DENIED/407 1723 OPTIONS http://172.16.25.252/ - NONE/- text/html
1390288226.605      0 172.16.16.55 TCP_DENIED/407 1753 CONNECT ent-shasta-rrs.symantec.com:443 - NONE/- text/html
1390288226.808      0 172.16.16.55 TCP_DENIED/407 1753 CONNECT ent-shasta-rrs.symantec.com:443 - NONE/- text/html

Mahimo usab nimo i-print ang gidaghanon sa mga karakter gamit ang argumento nga '-c' sama sa gipakita sa ubos.

# tail -c5 access.log

ymantec.com:443 - NONE/- text/html

3. iring Sugo

Ang 'iring' nga sugo mao ang labing kaylap nga gigamit, universal nga himan. Gikopya niini ang standard input ngadto sa standard output. Ang sugo nagsuporta sa pag-scroll, kung ang text file dili mohaum sa kasamtangan nga screen.

Ang sukaranan nga syntax sa cat command mao ang:

# cat [options] [filenames] [-] [filenames]

Ang labing kanunay nga paggamit sa iring mao ang pagbasa sa mga sulud sa mga file. Ang tanan nga gikinahanglan sa pag-abli sa usa ka file alang sa pagbasa mao ang pag-type sa pusa nga gisundan sa usa ka luna ug ang ngalan sa file.

# cat /etc/passwd 

root:x:0:0:root:/root:/bin/bash 
daemon:x:1:1:daemon:/usr/sbin:/bin/sh 
bin:x:2:2:bin:/bin:/bin/sh 
sys:x:3:3:sys:/dev:/bin/sh 
sync:x:4:65534:sync:/bin:/bin/sync 
games:x:5:60:games:/usr/games:/bin/sh 
man:x:6:12:man:/var/cache/man:/bin/sh 
lp:x:7:7:lp:/var/spool/lpd:/bin/sh 
…

Ang cat command gigamit usab sa paghiusa sa gidaghanon sa mga file.

# echo 'Hi Tecmint-Team' > 1 
# echo 'Keep connected' > 2 
# echo 'Share your thought' > 3 
# echo 'connect us [email ' > 4
# cat 1 2 3 4 > 5
# cat 5 

Hi Tecmint-Team 
Keep connected 
Share your thought 
connect us [email 

Mahimo usab kini gamiton sa paghimo og mga file usab. Kini makab-ot pinaagi sa pagpatuman sa iring gisundan sa output redirection operator ug ang file ngalan nga pagabuhaton.

# cat > tecmint.txt

Tecmint is the only website fully dedicated to Linux.

Mahimo kaming adunay kostumbre nga tigbuhat sa katapusan alang sa mando nga 'cat'. Dinhi kini gipatuman.

# cat > test.txt << end 

I am Avishek 
Here i am writing this post 
Hope your are enjoying 
end
# cat test.txt 

I am Avishek 
Here i am writing this post 
Hope your are enjoying

Ayaw gyud pakamenosa ang gahom sa  ‘cat’ command ug mahimong mapuslanon sa pagkopya sa mga file.

# cat avi.txt

I am a Programmer by birth and Admin by profession
# cat avi.txt > avi1.txt
# cat avi1.txt

I am a Programmer by birth and Admin by profession

Karon unsa ang kaatbang sa iring? Oo kini 'tac'. Ang 'tac' usa ka sugo ubos sa Linux. Mas maayo nga magpakita usa ka pananglitan sa 'tac' kaysa maghisgot bahin niini.

Paghimo usa ka text file nga adunay mga ngalan sa tanan nga bulan, aron ang usa ka pulong makita sa usa ka linya.

# cat month

January
February
March
April
May
June
July
August
September
October
November
December
# tac month

December
November
October
September
August
July
June
May
April
March
February
January

Alang sa dugang nga mga pananglitan sa paggamit sa cat command, tan-awa ang 13 cat Command Usage

Kana lang sa pagkakaron. Ania ako pag-usab uban sa laing Makapaikag nga Artikulo, angay nga Mahibaloan. Hangtud unya magpabilin nga tuned ug konektado sa Tecmint. Ayaw kalimti ang paghatag kanamo sa imong bililhon nga feedback sa among seksyon sa komento.