एक ही समय में कॉपी और chmod / chown


14

मेरे पास एक लॉग फ़ाइल है, rootजिसके द्वारा मैं किसी अन्य उपयोगकर्ता के स्वामित्व वाली निर्देशिका में उसका विश्लेषण करने के लिए कॉपी करना चाहता हूं (यह पहले असम्पीडित होना चाहिए)।

वर्तमान में मुझे करना पड़ेगा

# cp log.xz /home/user/Documents
# chown user:user /home/user/Documents/log.xz

क्या एक ही समय में दोनों आदेशों को जारी करने का एक तरीका है, शायद एक या अधिक cpविकल्पों के साथ?


आप एक ही समय में कई कमांड चलाने के बारे में पूछ रहे हैं?
asvignesh

@ विग्नेश मैं सिर्फ यह बता रहा हूं कि इसे सबसे छोटा तरीका, शायद पाइप के उचित उपयोग के साथ;)
usr-local-local

जवाबों:


6

Cp man पेज किसी भी विकल्प को सूचीबद्ध नहीं करता है जो आपको केवल CP कमांड के साथ ऐसा करने की अनुमति देगा। यदि आप केवल एक कमांड और "दूर चलना" जारी करना चाहते हैं, तो आप 2 आदेशों को 1 लाइन पर अलग कर सकते हैं a; स्वचालित रूप से आदेशों को निष्पादित करने के लिए।

cp log.xz / home / user / Documents; chown उपयोगकर्ता: user /home/user/Documents/log.xz

यद्यपि तुच्छ, मैंने अपने प्रश्न को यह देखने के लिए कहा कि क्या पाइप के उचित उपयोग के साथ कोई स्मार्ट वन-लाइनर है या नहीं। यह शायद मौजूद नहीं है
usr-local-doesn't

मुझे नहीं लगता कि इसका एक अच्छा समाधान है, लेकिन यदि आप पाइपों का उपयोग करते हुए मृत हो गए हैं, तो मैं निम्नलिखित संकेत के साथ आया हूं, जिस पर मुझे संदेह है - "cp -v /from.dir / to / dir 2> / dev / null | cut -f1 -d "'" | cut -c2- | xargs chown उपयोगकर्ता: उपयोगकर्ता "
davidgo

यदि आप वास्तव में एक जवाब, लोगों की जरूरत है, तो स्वीकार किए गए उत्तर से परे स्क्रॉल करें ...
जोशायोडर-निष्क्रिय-को छोड़कर ..

34

आप देखना चाह सकते हैं install:

install -g user -o user log.xz /home/user/Documents

installअन्य विकल्पों को स्थापित करने के लिए उपयुक्त है। जैसे सेट मोड या निर्देशिका संरचना को संरक्षित करना।


अच्छी टिप। मुझे लगता है कि "इंस्टॉल" चीजों को स्थापित करने के लिए है, लेकिन मैनपेज में इसका वास्तविक सारांश है: "इंस्टॉल - कॉपी फाइलों और सेट विशेषताओं"
राउल सालिनास-मोंटियागुडो

@ शेपरेंटो: installसिस्टम में फ़ाइलों को स्थापित करने के लिए प्राथमिक उपयोग अभी भी है। कुछ प्रोग्राम वास्तव installमें PATH पर्यावरण चर को संशोधित करके ओवरराइड करते हैं, ताकि फाइलें कहीं और स्थापित हो जाएं। कुछ पैकेज बिल्डर्स ऐसा करते हैं कि वर्तमान सिस्टम में फ़ाइलें स्थापित नहीं हैं, बल्कि एक पैकेज में सहेजी गई हैं।
बैच 15

1
यह है -g group -o user-oमालिक के लिए खड़ा है।
जोशायोडर-निष्क्रिय को छोड़कर ..

2

cp कमांड का मैप पेज देखें

--preserve [= ATTR_LIST] निर्दिष्ट विशेषताओं (डिफ़ॉल्ट: मोड, स्वामित्व, टाइमस्टैम्प) को सुरक्षित रखें, यदि संभव हो तो अतिरिक्त विशेषताएँ: संदर्भ, लिंक, xattr, सभी

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.