లైనక్స్‌లో ఫైల్‌కు ప్యాచ్‌ను ఎలా ఉపయోగించాలి (మరియు పాచెస్ సృష్టించండి)

లైనక్స్ పాచ్ ఒక ఫైల్ నుండి మరొక ఫైళ్ళకు మార్పులను త్వరగా మరియు సురక్షితంగా బదిలీ చేయడానికి ఆదేశం మిమ్మల్ని అనుమతిస్తుంది. ఎలా ఉపయోగించాలో తెలుసుకోండి పాచ్ సాధారణ మార్గం.

ప్యాచ్ మరియు డిఫ్ ఆదేశాలు

మీ కంప్యూటర్‌లో మీకు టెక్స్ట్ ఫైల్ ఉందని g హించుకోండి. మీరు ఆ టెక్స్ట్ ఫైల్ యొక్క సవరించిన సంస్కరణను వేరొకరి నుండి స్వీకరిస్తారు. సవరించిన ఫైల్ నుండి మీ అసలు ఫైల్‌కు అన్ని మార్పులను మీరు త్వరగా ఎలా బదిలీ చేస్తారు? అక్కడే పాచ్ మరియు తేడా ఆటలోకి వస్తాయి. పాచ్ మరియు తేడా లైనక్స్ మరియు మాకోస్ వంటి ఇతర యునిక్స్-లాంటి ఆపరేటింగ్ సిస్టమ్స్‌లో కనిపిస్తాయి.

ది తేడా కమాండ్ ఫైల్ యొక్క రెండు వేర్వేరు సంస్కరణలను పరిశీలిస్తుంది మరియు వాటి మధ్య తేడాలను జాబితా చేస్తుంది. పాచ్ ఫైల్ అనే ఫైల్‌లో తేడాలను నిల్వ చేయవచ్చు.

దిపాచ్ కమాండ్ ఒక ప్యాచ్ ఫైల్‌ను చదవగలదు మరియు విషయాలను సూచనల సమితిగా ఉపయోగించగలదు. ఆ సూచనలను అనుసరించడం ద్వారా, సవరించిన ఫైల్‌లోని మార్పులు అసలు ఫైల్‌లో ప్రతిరూపం అవుతాయి.

టెక్స్ట్ ఫైల్స్ యొక్క మొత్తం డైరెక్టరీకి ఆ ప్రక్రియ జరుగుతుందని ఇప్పుడు imagine హించుకోండి. అన్నీ ఒకేసారి. ఇది శక్తి పాచ్.

కొన్నిసార్లు మీరు సవరించిన ఫైల్‌లను పంపలేరు. మీరు పంపినదంతా ప్యాచ్ ఫైల్. మీరు ఒక ఫైల్‌ను పంపగలిగినప్పుడు లేదా సులభంగా డౌన్‌లోడ్ చేయడానికి ఒక ఫైల్‌ను పోస్ట్ చేసేటప్పుడు డజన్ల కొద్దీ ఫైల్‌లను ఎందుకు పంపాలి?

మీ ఫైళ్ళను వాస్తవానికి ప్యాచ్ చేయడానికి మీరు ప్యాచ్ ఫైల్‌తో ఏమి చేస్తారు? దాదాపు నాలుక-ట్విస్టర్ కాకుండా, ఇది కూడా మంచి ప్రశ్న. ఈ వ్యాసంలో మేము మిమ్మల్ని నడిపిస్తాము.

ది పాచ్ సాఫ్ట్‌వేర్ సోర్స్ కోడ్ ఫైల్‌లతో పనిచేసే వ్యక్తులు ఆదేశాన్ని చాలా తరచుగా ఉపయోగిస్తారు, అయితే ఇది వారి ఉద్దేశ్యం, సోర్స్ కోడ్ లేదా కాకపోయినా ఏదైనా టెక్స్ట్ ఫైళ్ళతో సమానంగా పనిచేస్తుంది.

సంబంధించినది:లైనక్స్ టెర్మినల్‌లోని రెండు టెక్స్ట్ ఫైల్‌లను ఎలా పోల్చాలి

మా ఉదాహరణ దృశ్యం

ఈ దృష్టాంతంలో, మేము మరో రెండు డైరెక్టరీలను కలిగి ఉన్న వర్క్ అనే డైరెక్టరీలో ఉన్నాము. ఒకటి అంటారు పని, మరియు మరొకటి అంటారు తాజాది. వర్కింగ్ డైరెక్టరీ సోర్స్ కోడ్ ఫైళ్ళ సమితిని కలిగి ఉంటుంది. తాజా డైరెక్టరీ ఆ సోర్స్ కోడ్ ఫైళ్ళ యొక్క ఇటీవలి సంస్కరణను కలిగి ఉంది, వాటిలో కొన్ని సవరించబడ్డాయి.

సురక్షితంగా ఉండటానికి, వర్కింగ్ డైరెక్టరీ టెక్స్ట్ ఫైల్స్ యొక్క ప్రస్తుత వెర్షన్ యొక్క కాపీ. ఇది వాటి యొక్క ఏకైక కాపీ కాదు.

ఫైల్ యొక్క రెండు సంస్కరణల మధ్య తేడాలను కనుగొనడం

ది తేడా కమాండ్ రెండు ఫైళ్ళ మధ్య తేడాలను కనుగొంటుంది. టెర్మినల్ విండోలో సవరించిన పంక్తులను జాబితా చేయడం దీని డిఫాల్ట్ చర్య.

ఒక ఫైల్ అంటారు slang.c. మేము వర్కింగ్ డైరెక్టరీలోని సంస్కరణను తాజా డైరెక్టరీలోని ఒకదానికి పోలుస్తాము.

ది -u (ఏకీకృత) ఎంపిక చెబుతుంది తేడా మార్చబడిన ప్రతి విభాగానికి ముందు మరియు తరువాత నుండి మార్పు చేయని కొన్ని వచన పంక్తులను జాబితా చేయడానికి. ఈ పంక్తులను కాంటెక్స్ట్ లైన్స్ అంటారు. వారు సహాయం చేస్తారుపాచ్ అసలు ఫైల్‌లో మార్పు చేయాల్సిన చోట కమాండ్ ఖచ్చితంగా గుర్తించండి.

మేము ఫైళ్ళ పేర్లను అందిస్తాము తేడా ఏ ఫైళ్ళను పోల్చాలో తెలుసు. అసలు ఫైల్ మొదట జాబితా చేయబడింది, తరువాత సవరించిన ఫైల్. ఇది మేము జారీ చేసే ఆదేశం తేడా:

diff -u working / slang.c latest / slang.c

తేడా ఫైళ్ళ మధ్య తేడాలను చూపించే అవుట్పుట్ జాబితాను ఉత్పత్తి చేస్తుంది. ఫైళ్ళు ఒకేలా ఉంటే, అవుట్పుట్ జాబితా చేయబడదు. నుండి ఈ రకమైన అవుట్పుట్ చూడటం తేడా రెండు ఫైల్ సంస్కరణల మధ్య తేడాలు ఉన్నాయని మరియు అసలు ఫైల్‌కు పాచింగ్ అవసరమని నిర్ధారిస్తుంది.

ప్యాచ్ ఫైల్ చేయడం

ప్యాచ్ ఫైల్‌లో ఆ తేడాలను సంగ్రహించడానికి, కింది ఆదేశాన్ని ఉపయోగించండి. ఇది అవుట్‌పుట్‌తో పై మాదిరిగానే ఉంటుంది తేడా slang.patch అనే ఫైల్‌లోకి మళ్ళించబడుతుంది.

diff -u working / slang.c latest / slang.c> slang.patch

ప్యాచ్ ఫైల్ పేరు ఏకపక్షంగా ఉంది. మీకు నచ్చిన దాన్ని మీరు పిలుస్తారు. దీనికి “.ప్యాచ్” పొడిగింపు ఇవ్వడం మంచిది; ఏది ఏమయినప్పటికీ, ఇది ఏ రకమైన ఫైల్ అని స్పష్టం చేస్తుంది.

చేయడానికిపాచ్ ప్యాచ్ ఫైల్‌పై చర్య తీసుకోండి మరియు వర్కింగ్ / slang.c ఫైల్‌ను సవరించండి, కింది ఆదేశాన్ని ఉపయోగించండి. ది -u (ఏకీకృత) ఎంపిక అనుమతిస్తుంది పాచ్ ప్యాచ్ ఫైల్ ఏకీకృత సందర్భ పంక్తులను కలిగి ఉందని తెలుసుకోండి. మరో మాటలో చెప్పాలంటే, మేము -u ఎంపికను తేడాలతో ఉపయోగించాము, కాబట్టి మేము దీనిని ఉపయోగిస్తాము -u తో ఎంపిక పాచ్.

patch -u working.slang.c -i slang.patch

అన్నీ సరిగ్గా జరిగితే, అవుట్‌పుట్ యొక్క ఒక లైన్ మీకు చెబుతుంది పాచ్ ఫైల్ను పాచ్ చేస్తోంది.

ఒరిజినల్ ఫైల్ యొక్క బ్యాకప్ చేయడం

మేము సూచించగలము పాచ్ పాచ్ చేసిన ఫైళ్ళను ఉపయోగించి వాటిని మార్చడానికి ముందు వాటిని బ్యాకప్ కాపీ చేయడానికి-బి (బ్యాకప్) ఎంపిక. ది -i (ఇన్పుట్) ఎంపిక పాచ్ ఫైల్ పేరును ఉపయోగించమని చెబుతుంది:

 patch -u -b working.slang.c -i slang.patch 

అవుట్పుట్లో కనిపించే తేడా లేకుండా ఫైల్ మునుపటిలా పాచ్ చేయబడింది. అయితే, మీరు పని చేసే ఫోల్డర్‌ను పరిశీలిస్తే, slang.c.orig అనే ఫైల్ సృష్టించబడిందని మీరు చూస్తారు. ఫైళ్ళ యొక్క తేదీ మరియు సమయ స్టాంపులు slang.c.orig అసలు ఫైల్ అని మరియు slang.c సృష్టించిన క్రొత్త ఫైల్ అని చూపిస్తుంది పాచ్.

డైరెక్టరీలతో తేడాను ఉపయోగించడం

మేము ఉపయోగించవచ్చు తేడా రెండు డైరెక్టరీలలోని ఫైళ్ళ మధ్య ఉన్న అన్ని తేడాలను కలిగి ఉన్న ప్యాచ్ ఫైల్ను సృష్టించడానికి. మేము ఆ ప్యాచ్ ఫైల్ను ఉపయోగించవచ్చు పాచ్ ఒకే ఆదేశంతో వర్కింగ్ ఫోల్డర్‌లోని ఫైల్‌లకు ఆ తేడాలు వర్తించబడతాయి.

మేము ఉపయోగించబోయే ఎంపికలు తేడా ఉన్నాయి -u (ఏకీకృత సందర్భం) ఎంపిక మేము ఇంతకుముందు ఉపయోగించాము -ఆర్ (పునరావృత) ఎంపిక తేడా ఏదైనా ఉప డైరెక్టరీలను పరిశీలించండి మరియు -ఎన్ (క్రొత్త ఫైల్) ఎంపిక.

ది -ఎన్ ఎంపిక చెబుతుంది తేడా వర్కింగ్ డైరెక్టరీలో లేని తాజా డైరెక్టరీలో ఫైళ్ళను ఎలా నిర్వహించాలో. ఇది బలవంతం చేస్తుంది తేడా ప్యాచ్ ఫైల్‌లో సూచనలను ఉంచడానికిపాచ్ తాజా డైరెక్టరీలో ఉన్న కాని వర్కింగ్ డైరెక్టరీ నుండి తప్పిపోయిన ఫైళ్ళను సృష్టిస్తుంది.

మీరు ఒకే హైఫన్‌ను ఉపయోగించే విధంగా ఎంపికలను కలిసి బంచ్ చేయవచ్చు (-).

మేము డైరెక్టరీ పేర్లను మాత్రమే అందిస్తున్నామని గమనించండి, మేము చెప్పడం లేదు తేడా నిర్దిష్ట ఫైళ్ళను చూడటానికి:

diff -ruN working / latest /> slang.patch

ప్యాచ్ ఫైల్ లోపల పీకింగ్

ప్యాచ్ ఫైల్‌ను శీఘ్రంగా చూద్దాం. మేము ఉపయోగిస్తాము తక్కువ దాని విషయాలను చూడటానికి.

ఫైలు పైభాగం slang.c యొక్క రెండు వెర్షన్ల మధ్య తేడాలను చూపుతుంది.

ప్యాచ్ ఫైల్ ద్వారా మరింత క్రిందికి స్క్రోలింగ్ చేస్తే, అది structs.h అని పిలువబడే మరొక ఫైల్‌లోని మార్పులను వివరిస్తుంది. ప్యాచ్ ఫైల్ ఖచ్చితంగా బహుళ ఫైళ్ళ యొక్క విభిన్న సంస్కరణల మధ్య తేడాలను కలిగి ఉందని ఇది ధృవీకరిస్తుంది.

దూకేముందు చూసుకో

ఫైళ్ళ యొక్క పెద్ద సేకరణను ప్యాచ్ చేయడం కొంచెం అనాలోచితంగా ఉంటుంది, కాబట్టి మేము వీటిని ఉపయోగించబోతున్నాము - డ్రై-రన్ మేము గుచ్చుకోవటానికి ముందు మరియు మార్పులు చేయటానికి ముందు మనం ప్రతిదీ తనిఖీ చేసే ఎంపిక మంచిది.

ది - డ్రై-రన్ ఎంపిక చెబుతుంది పాచ్ వాస్తవానికి ఫైళ్ళను సవరించడం కాకుండా ప్రతిదీ చేయడానికి. పాచ్ ఫైళ్ళలో దాని ప్రీ-ఫ్లైట్ తనిఖీలన్నింటినీ చేస్తుంది మరియు అది ఏవైనా సమస్యలను ఎదుర్కొంటే, అది వాటిని నివేదిస్తుంది. ఎలాగైనా, ఫైళ్లు సవరించబడవు.

ఏ సమస్యలు నివేదించబడకపోతే, మేము లేకుండా ఆదేశాన్ని పునరావృతం చేయవచ్చు - డ్రై-రన్ ఎంపిక మరియు నమ్మకంగా మా ఫైళ్ళను ప్యాచ్ చేయండి.

ది -డి (డైరెక్టరీ) ఎంపిక చెప్పండి పాచ్ ఏ డైరెక్టరీ పని చేయాలి.

మేము ఉన్నామని గమనించండి కాదు ఉపయోగించి -i (ఇన్పుట్) చెప్పడానికి ఎంపిక పాచ్ ఏ ప్యాచ్ ఫైల్ నుండి సూచనలను కలిగి ఉంటుంది తేడా. బదులుగా, మేము ప్యాచ్ ఫైల్‌ను దారి మళ్లించాము పాచ్ తో <.

patch --dry-run -ruN -d working <slang.patch

మొత్తం డైరెక్టరీలో, తేడా పాచ్ చేయడానికి రెండు ఫైళ్లు కనుగొనబడ్డాయి. ఆ రెండు ఫైళ్ళ యొక్క మార్పులకు సంబంధించిన సూచనలు తనిఖీ చేయబడ్డాయి పాచ్ , మరియు సమస్యలు ఏవీ నివేదించబడలేదు.

ప్రీ-ఫ్లైట్ తనిఖీలు సరే; మేము టేకాఫ్ కోసం సిద్ధంగా ఉన్నాము.

డైరెక్టరీని పాచ్ చేస్తోంది

మేము లేకుండా మునుపటి ఆదేశాన్ని ఉపయోగించే ఫైళ్ళకు పాచెస్‌ను వాస్తవంగా వర్తింపచేయడానికి - డ్రై-రన్ ఎంపిక.

patch -ruN -d పని <slang.patch

ఈసారి ప్రతి అవుట్పుట్ పంక్తి “తనిఖీ” తో ప్రారంభం కాదు, ప్రతి పంక్తి “పాచింగ్” తో మొదలవుతుంది.

మరియు సమస్యలు ఏవీ నివేదించబడలేదు. మేము మా సోర్స్ కోడ్‌ను కంపైల్ చేయవచ్చు మరియు మేము సాఫ్ట్‌వేర్ యొక్క తాజా వెర్షన్‌లో ఉంటాము.

మీ తేడాలను పరిష్కరించండి

ఇది ఇప్పటివరకు ఉపయోగించడానికి సులభమైన మరియు సురక్షితమైన మార్గం పాచ్. మీ లక్ష్య ఫైల్‌లను ఫోల్డర్‌కు కాపీ చేసి, ఆ ఫోల్డర్‌ను ప్యాచ్ చేయండి. పాచింగ్ ప్రక్రియ లోపం లేకుండా పూర్తయినందుకు మీరు సంతోషంగా ఉన్నప్పుడు వాటిని తిరిగి కాపీ చేయండి.


$config[zx-auto] not found$config[zx-overlay] not found