मैं x से कम आकार की फाइलें कैसे स्कैन करूं?


13

मैं अपने लैपटॉप पर कुछ विकसित कर रहा हूं और फाइलों को उच्च प्रदर्शन पीसी (एक मॉनिटर वाला सर्वर) के रूप में स्कैन कर रहा हूं। आलस्य से बाहर मैं अभी यह (लैपटॉप पर) कर रहा हूँ:

scp -r ~/project/* server:~/project/

हालाँकि प्रोजेक्ट डायरेक्टरी की कुछ फाइलें कुछ लॉग फाइल और आउट फाइल हैं जिन्हें मुझे भेजने की आवश्यकता नहीं है, जो कभी-कभी एक गिग या ऐसा भी हो सकता है। मैं जो चाहता हूं वह एक अच्छा स्वच्छ कमांड है जो मूल रूप से एक ही काम करता है (परियोजना और इसकी उपनिर्देशिकाओं में सभी फाइलों को प्रसारित करता है) लेकिन केवल एक निश्चित फाइल थ्रेसहोल्ड के तहत फाइलें भेजता है, जैसे कि 100 एमबी। मैं केवल हल्के से बैश के साथ अनुभव कर रहा हूं और regexp के साथ बिल्कुल भी नहीं हूं इसलिए मुझे वास्तव में कोई भी विचार नहीं है कि कुछ जटिल विधि के बिना ऐसा कैसे करें जैसे कि अजगर में एसईएस आयात करना और आईएफएस और तुलनाओं का एक गुच्छा का उपयोग करना।

जवाबों:


27

आप 'rsync' कमांड का उपयोग कर सकते हैं, जिसमें फ़ाइल आकार को नियंत्रित करने का विकल्प होता है।

rsync -rv --max-size=100m /path/in/local/ server:~/project/

' आदमी rsync ' से,

--max-size=SIZE    don't transfer any file larger than SIZE

अपडेट किया गया उत्तर : केवल 'rsync' --exclude विकल्प के रूप में नीचे दी गई लॉग फाइलों को बाहर करें

rsync -rv --exclude='*.log' --max-size=100m /path/in/local/ server:~/project/

या आप 'scp' के साथ 'खोज' कमांड संयोजन का उपयोग कर सकते हैं और इसके -sizeविकल्प के साथ फ़ाइल आकार सीमा निर्दिष्ट कर सकते हैं । ! -name '*.log''लॉग' के साथ कुछ निश्चित फाइलों को समाप्त करने के लिए उपयोग करें।

find /path/in/local -type f ! -name '*.log' -size -100m -exec scp '{}' server:~/project/ \;

1
ओपी के लिए एक नोट: rsyncके समान है scp, लेकिन अधिक कुशल है, क्योंकि यह केवल तभी बदलता है जब कोई फ़ाइल संशोधित होती है।
धान लैंडौ

निर्देशिका के आदेश के साथ सावधान रहना रूप मेंrsync -rv --max-size SOURCE DESTINATION। मैंने ठीक से नहीं पढ़ा, और इस तख्तापलट के बहुत बुरे परिणाम हैं।
टोटको_टिको
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.