ফাইল সরাতে স্ক্রিপ্টে বাশ করুন


11

আমি একজন শিক্ষানবিস এবং আমার সাহায্য দরকার।

আমি অন্য ডিরেক্টরিতে একটি ডিরেক্টরি থেকে কিছু ফাইল সরানোর জন্য একটি স্ক্রিপ্ট তৈরি করার চেষ্টা করছি। স্ক্রিপ্ট তৈরি করার আগে আমি কমান্ডটি পরীক্ষা করেছিলাম এবং এটি কার্যকর ছিল:

mv /path/to/source  /path/to/destination

আমি স্ক্রিপ্টটি তৈরি করার পরে nano:

#!bin/bash/
echo "mv /path/to/source  /path/to/destination"

আমি স্ক্রিপ্টটি দিয়ে সম্পাদনযোগ্য করে দিয়েছি: chmod +x file এবং তারপরে ./fileনিম্নলিখিতটি ত্রুটি উপস্থিত হওয়ার সাথে সাথে কার্যকর করা হবে:

bash: ./move.sh: /bin/bash/: bad interpreter: Not a directory

আমি চেষ্টা করেছি এবং উইথ sudo ./fileফাইল এবং ব্যাশ করেছি কিন্তু এটি কাজ করছে না।

আমি ভার্চুয়ালবক্সের সাথে ইনস্টল করা উবুন্টু ব্যবহার করছি।


আপনার অ্যাডভান্সড ব্যাশ-স্ক্রিপ্টিং গাইডটি একবার দেখে নেওয়া উচিত ।
LiveWireBT

উত্তর:


20

কারণ আপনি ব্যবহার করেছেন #!bin/bash/এবং এটি ভুল। সঠিক উপায়:

#!/bin/bash

এটিকে শেবাং বলা হয় এবং এটি শেলটিকে স্ক্রিপ্টটিকে কী প্রোগ্রামের সাথে, যখন মৃত্যুদন্ড কার্যকর করা হয় তা ব্যাখ্যা করে tells

আরেকটি বিষয়: উবুন্টুতে ব্যাশ ইন্টারপ্রেটারের পরম পথ হ'ল /bin/bash, না bin/bash/বা অন্য কিছু। আপনি which bashকমান্ড ব্যবহার করে এটি পরীক্ষা করতে পারেন ।

এবং অন্য একটি জিনিস, তবে সম্ভবত আপনি এটি জানেন: নিম্নলিখিত লাইন:

echo "mv /path/to/source /path/to/destination"

এর সাথে কেবল একটি পাঠ্য বার্তা প্রদর্শন করবে mv /path/to/source /path/to/destination। ফাইলগুলি সত্যই সরানোর জন্য নিম্নলিখিত স্ক্রিপ্টটি ব্যবহার করুন:

#!/bin/bash
mv /path/to/source /path/to/destination

আপনার স্ক্রিপ্টটি দেখতে এমনভাবে দেখা উচিত।


1
তাই, উবুন্টু historতিহাসিকভাবে অবিশ্বাস্যরূপে দরকারী whichকমান্ডের একটি কৃপণ সংস্করণ প্যাকেজ করেছে । ম্যানুয়াল ইনস্টল করার জন্য এটি gnu পেতে মূল্যবান ।
djeikyb
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.