लिनक्स के लिए सरल खोज और कॉपी स्क्रिप्ट [बंद]


2

मैं लिनक्स में स्क्रिप्ट के लिए काफी नौसिखिया हूँ। जो भी पाने की कोशिश कर रहा है वह एक सरल स्क्रिप्ट है जो किसी फ़ाइल को उसके सटीक नाम से ढूंढता है, फिर उस फ़ाइल को एक अलग फ़ोल्डर में कॉपी करें।

इसलिए अनिवार्य रूप से इसे "./findandcopy [फ़ाइल नाम]" की तरह काम करना चाहिए यह वही है जो मुझे अब तक मिला है:

#!/bin/sh

ARGS=1
E_BADARGS=65
E_NOFILE=66

if [ $# -ne "$ARGS" ]  # Correct number of arguments not passed
 then
  echo "Usage: `basename $0` filename"
  exit $E_BADARGS
fi


'find ./ -name \$1'  -exec cp {} /home/marc/ \;

लेकिन वह मेरे लिए काम नहीं करेगा। किसी भी मदद की सराहना करें।


महज प्रयोग करें find . के बजाय find ./ - यदि आपको टाइपिंग की आदत है, तो आपको निर्देशिका नाम के अंत में एक स्लैश टाइप करने की आवश्यकता नहीं है, और ./ जब आप वर्तमान निर्देशिका का मतलब है (जिसके लिए . पर्याप्त होगा), फिर किसी दिन आप गलती से टाइप करेंगे / या /., संभवतः विनाशकारी परिणामों के साथ। आपको इसकी आवश्यकता नहीं है / के अंत में /home/marc/, या तो।
Scott

जवाबों:


3

आपको उपयोग करना चाहिए:

find ./ -name "$1" -exec cp {} /home/marc/ \;

इसके आसपास एकल उद्धरण के बिना। अन्यथा शेल पूरे का इलाज करेगा find ./ -name \$1 एकल फ़ाइल नाम के रूप में कमांड करें और उस पर अमल करने का प्रयास करें।

आपको तर्क उद्धृत करना चाहिए "$1" विस्तार से फ़ाइल नाम में व्हॉट्सएप या ग्लब्स को रोकने के लिए।


अब काम करता है, त्वरित प्रतिक्रिया के लिए thx :) लगता है कि मुझे कुछ बुनियादी स्क्रिप्ट ट्यूटोरियल की जाँच करनी चाहिए ^ ^
LetzFetz

मैं यह एक की सिफारिश करेंगे: tldp.org/LDP/abs/html - आप वहाँ लगभग कुछ भी के लिए उदाहरण मिल जाएगा। कृपया ध्यान दें कि भविष्य में प्रश्न पूछते समय, "मेरे लिए काम नहीं करेगा" की तुलना में थोड़ा अधिक विशिष्ट होना हमेशा बेहतर होता है। यदि आपको कोई त्रुटि हो रही है, तो कृपया उन्हें शामिल करें।
slhck

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