निम्नलिखित कोड में क्या गलत है?
name='$filename | cut -f1 -d'.''
जैसा कि, मुझे शाब्दिक स्ट्रिंग मिलता है $filename | cut -f1 -d'.', लेकिन यदि मैं उन उद्धरणों को हटा देता हूं तो मुझे कुछ भी नहीं मिलता है। इस बीच, टाइपिंग
"test.exe" | cut -f1 -d'.'
एक शेल में मुझे वह आउटपुट मिलता है जो मैं चाहता हूं test,। मुझे पहले से ही पता $filenameहै कि सही मूल्य सौंपा गया है। मैं जो करना चाहता हूं वह एक्सटेंशन के बिना फ़ाइल नाम के एक चर को असाइन करना है।
basename "$filename" .exe। अन्यथा रिक्त स्थान वाले फाइलनाम बुरी खबर होगी।
basename $filename .exeवही काम करेगा। यह मानते हुए कि आप हमेशा जानते हैं कि आप किस विस्तार को हटाना चाहते हैं।