Serye sa RHCSA: Giunsa Pagbuhat ang Pagdumala sa File ug Direktoryo - Bahin 2


Niini nga artikulo, RHCSA Bahin 2: Pagdumala sa file ug direktoryo, atong ribyuhon ang pipila ka importanteng kahanas nga gikinahanglan sa adlaw-adlaw nga buluhaton sa usa ka tigdumala sa sistema.

Paghimo, Pagtangtang, Kopyaha, ug Pagbalhin sa mga File ug Direktoryo

Ang pagdumala sa file ug direktoryo usa ka kritikal nga kahanas nga kinahanglan maangkon sa matag tagdumala sa sistema. Naglakip kini sa abilidad sa paghimo/pagtangtang sa mga file sa teksto gikan sa wala (ang kinauyokan sa matag configuration sa programa) ug mga direktoryo (diin mag-organisar ka og mga file ug uban pang mga direktoryo), ug aron mahibal-an ang matang sa kasamtangan nga mga file.

Ang touch command mahimong magamit dili lamang sa paghimo og mga walay sulod nga mga file, apan usab sa pag-update sa mga oras sa pag-access ug pagbag-o sa kasamtangan nga mga file.

Mahimo nimong gamiton ang file [filename] aron mahibal-an ang tipo sa file (kini magamit sa dili pa ilunsad ang imong gusto nga editor sa teksto aron i-edit kini).

ug rm [filename] aron mapapas kini.

Mahitungod sa mga direktoryo, makahimo ka og mga direktoryo sulod sa kasamtangan nga mga agianan nga adunay mkdir [direktoryo] o maghimo og tibuok nga agianan nga adunay mkdir -p [/full/path/to/directory].

Kung bahin sa pagtangtang sa mga direktoryo, kinahanglan nimo nga sigurohon nga kini wala’y sulod sa dili pa i-issue ang rmdir [direktoryo] nga mando, o gamita ang labi ka kusgan (pagdumala uban ang pag-amping!) rm -rf [direktoryo]. Kining kataposang opsyon mopugos sa pagtangtang sa balikbalik nga [direktoryo] ug sa tanang sulod niini – busa gamita kini sa imong kaugalingong risgo.

Input ug Output Redirection ug Pipelining

Ang palibot sa command line naghatag og duha ka mapuslanon nga mga bahin nga nagtugot sa pag-redirect sa input ug output sa mga sugo gikan ug ngadto sa mga file, ug sa pagpadala sa output sa usa ka sugo ngadto sa lain, nga gitawag redirection ug pipelining, sa tinagsa.

Aron masabtan kadtong duha ka importante nga mga konsepto, kinahanglan una natong masabtan ang tulo ka labing importante nga mga matang sa I/O (Input ug Output) nga mga sapa (o mga han-ay) sa mga karakter, nga sa pagkatinuod espesyal nga mga file, sa *nix nga diwa sa pulong.

  1. Standard input (aka stdin) kay sa default gilakip sa keyboard. Sa laing pagkasulti, ang keyboard mao ang standard input device sa pagsulod sa mga command sa command line.
  2. Ang standard nga output (aka stdout) kay sa default gilakip sa screen, ang device nga \makadawat sa output sa mga command ug ipakita kini sa screen.
  3. Standard error (aka stderr), diin ang mga mensahe sa status sa usa ka command ipadala sa default, nga mao usab ang screen.

Sa mosunod nga pananglitan, ang output sa ls /var gipadala ngadto sa stdout (ang screen), ingon man ang resulta sa ls /tecmint. Apan sa ulahing kaso, kini ang stderr nga gipakita.

Aron mas dali nga mailhan kini nga mga espesyal nga file, ang matag usa kanila gihatagan usa ka deskriptor sa file, usa ka abstract nga representasyon nga gigamit aron ma-access kini. Ang hinungdanon nga butang nga masabtan mao nga kini nga mga file, sama sa uban, mahimong ma-redirect. Ang gipasabot niini mao nga mahimo nimong makuha ang output gikan sa usa ka file o script ug ipadala kini isip input sa laing file, command, o script. Kini magtugot kanimo sa pagtipig sa disk, pananglitan, ang output sa mga sugo alang sa ulahi nga pagproseso o pagtuki.

Aron i-redirect ang stdin (fd 0), stdout (fd 1), o stderr (fd 2), ang mosunod nga mga operator anaa.

Sukwahi sa redirection, ang pipelining gihimo pinaagi sa pagdugang sa usa ka bertikal bar (|) human sa usa ka sugo ug sa atubangan sa lain.

Hinumdomi:

  1. Ginagamit ang redirection aron ipadala ang output sa command ngadto sa file, o ipadala ang file isip input sa command.
  2. Ang pipelining gigamit aron ipadala ang output sa usa ka command ngadto sa laing command isip input.

Adunay mga panahon nga kinahanglan nimo nga mag-uli sa usa ka lista sa mga file. Aron mahimo kana, mahimo nimo una nga i-save kana nga lista sa usa ka file ug dayon basahon kana nga file linya sa linya. Bisan kung tinuod nga mahimo nimong i-uli ang output sa ls direkta, kini nga pananglitan nagsilbi aron ihulagway ang pag-redirect.

# ls -1 /var/mail > mail.txt

Kung gusto namong pugngan ang stdout ug stderr nga ipakita sa screen, mahimo namong i-redirect ang duha ka file descriptor sa /dev/null. Timan-i kung giunsa pagbag-o ang output kung gipatuman ang redirection alang sa parehas nga mando.

# ls /var /tecmint
# ls /var/ /tecmint &> /dev/null

Samtang ang classic syntax sa cat command mao ang mosunod.

# cat [file(s)]

Mahimo ka usab magpadala usa ka file ingon input, gamit ang tama nga operator sa pag-redirect.

# cat < mail.txt

Kung ikaw adunay usa ka dako nga direktoryo o lista sa proseso ug gusto nimo nga makit-an ang usa ka piho nga file o proseso sa usa ka pagtan-aw, gusto nimo nga i-pipeline ang lista sa grep.

Timan-i nga gigamit namon ang mga pipeline sa mosunod nga pananglitan. Ang una mangita sa gikinahanglan nga keyword, samtang ang ikaduha magwagtang sa aktuwal nga grep command gikan sa mga resulta. Kini nga pananglitan naglista sa tanan nga mga proseso nga nalangkit sa tiggamit sa apache.

# ps -ef | grep apache | grep -v grep