ফাইলগুলি মুছতে ব্যাচের স্ক্রিপ্ট


96

নীচে আমার একটি ব্যাচের স্ক্রিপ্ট রয়েছে।

D:
del "D:\TEST\TEST1\Archive\*.TSV" 
del "D:\TEST\TEST1\Archive\*.TXT"
del "D:\TEST\TEST2\Archive\*.TSV" 
del "D:\TEST\TEST2\Archive\*.TXT"
del "D:\TEST\TEST 100%\Archive\*.TSV" 
del "D:\TEST\TEST 100%\Archive\*.TXT"

উপরের কোডটি ফোল্ডার বাদে সমস্ত ফোল্ডার থেকে সমস্ত ".txt" এবং ".tsv" ফাইল মুছে ফেলে TEST 100%TEST 100%আমি ফাইলগুলি মুছে ফেলার জন্য ত্রুটিটি পেয়ে যাচ্ছি The Path could not be found। আমার ধারণা ফোল্ডারের নামের% চিহ্নটি ইস্যুটি তৈরি করে। সমস্যা সমাধানের জন্য এবং ফোল্ডার থেকে ফাইলগুলি মুছতে কেউ কি আমাকে গাইড করতে পারেন TEST 100%?


প্রথম লাইনে আপনার একটি উক্তি কেন? এছাড়াও, যখন আপনার ব্যাচের ফাইলটি ইতিমধ্যে প্রথম লাইনের সাথে সেই ড্রাইভে পরিবর্তিত হয়েছে তখন আপনি কেন ড্রাইভটি উল্লেখ করছেন? আমি আপনার সমস্যা এবং সমস্ত কিছুই প্রতিলিপি চেষ্টা করেছি। আপনি কি নিশ্চিত করেছেন যে সংরক্ষণাগারটি পরীক্ষায় 100% রয়েছে?
রোনাল্ডবারজেল

উত্তর:


112

আপনার সাথে অন্য% এর সাথে পালাতে হবে ...

del "D:\TEST\TEST 100%%\Archive*.TXT"

আমি ওপি'র পক্ষে কথা বলতে পারি না, তবে আমার সিস্টেমে% দিয়ে কোনও পথ খুঁজে পাওয়ার কোনও সমস্যা নেই, এবং %% নিয়ে পালানো সিস্টেমটিকে এটি সন্ধান থেকে বিরত রাখে।
রোনাল্ডবারজেল

@ ব্যবহারকারী 1161318 - আমি এটি উইন্ডোজ on এ পরীক্ষা করে দেখেছি the পালানো ছাড়া কোনও ব্যাচের ফাইলে, ফলাফল "সিস্টেম নির্দিষ্ট পথ খুঁজে পাবে না" in আমি পোস্ট হিসাবে এটি কাজ করে।
রুশ ফ্রিম্যান

ঠিক আছে, এক্সপিতে আমি বিপরীত ফলাফল পেয়েছি। এটি% দিয়ে পথটি সূক্ষ্মভাবে সন্ধান করে তবে এটি %% সহ খুঁজে পেতে ব্যর্থ হয়।
রোনাল্ডবারজেল

5
আমার অনুমান যে আপনি এটি কমান্ড প্রম্পট থেকে করছেন, কোনও ব্যাচ ফাইল থেকে নয়।
রাশ ফ্রিম্যান 13

4
তুমি সম্ভবত সঠিক. আমি ভুলে যাচ্ছি যে একটি ব্যাচের ফাইলে,% হল একটি ভেরিয়েবল উপসর্গ এবং আপনার এটি এড়ানো দরকার। +1
রোনাল্ডবারজেল

12

ব্যাচে বিভিন্ন জিনিস করার একাধিক উপায় রয়েছে, সুতরাং যদি দ্বিগুণ শতাংশ নিয়ে পালানো আপনার %%পক্ষে কাজ না করে তবে আপনি এরকম কিছু চেষ্টা করতে পারেন:

set olddir=%CD%
cd /d "path of folder"
del "file name/ or *.txt etc..."
cd /d "%olddir%"

এটি কীভাবে কাজ করে:

set olddir=%CD%"olddir"আপনার ব্যাচ ফাইলটি যে ডিরেক্টরি থেকে চালু হয়েছিল সেই ডিরেক্টরিতে আপনার পছন্দ মতো ভেরিয়েবল বা অন্য কোনও চলক নাম সেট করে ।

cd /d "path of folder"বর্তমান ডিরেক্টরিটি ব্যাচটি অনুসন্ধান করবে changes কোয়েটেশন রাখুন এবং যে ফোল্ডারে আপনি কখন যে পথটি বেছে নিচ্ছেন তার পথ পরিবর্তন করুন।

del "file name/ or *.txt etc..."আপনার ব্যাচটি যে ডিরেক্টরিটি দেখছে তার বর্তমান ফাইলটি মুছে ফেলবে, কেবল ফাইলের নামের আগে একটি ডিরেক্টরি পথ যুক্ত করবেন না এবং কেবলমাত্র পুরো ফাইলের নাম রাখবেন বা, একই এক্সটেনশন সহ একাধিক ফাইল মুছে ফেলতে *.txtবা আপনার প্রয়োজন বর্ধিত এক্সটেনশানটি যুক্ত করুন।

cd /d "%olddir%"আপনার পুরানো পাথের সাহায্যে সংরক্ষিত ভেরিয়েবলটি নিয়ে যায় এবং আপনি যে ব্যাচটি দিয়ে ব্যাচটি শুরু করেছিলেন সেটিতে ফিরে যান, আপনি যদি ব্যাচটি তার আগের ডিরেক্টরি পথে ফিরে না যেতে চান তবে এটি গুরুত্বপূর্ণ নয় এবং ভেরিয়েবলের নাম পরিবর্তন করার আগে যেমন বলা হয়েছিল পরিবর্তন করে আপনি যা খুশি set olddir=%CD% line


এটি সেরা মাধ্যমে সম্পন্ন করা হয় pushd "folder" && del "filename" & popd
নুনো আন্দ্রে

10

বলুন আপনি নিজের সফ্টওয়্যারটিকে আপনার ডেস্কটপে সংরক্ষণ করেছেন।
আপনি যদি একটি আনইনস্টলার প্রোগ্রামের মতো একটি পুরো ফোল্ডারটি সরাতে চান তবে আপনি এটি ব্যবহার করতে পারেন।

cd C:\Users\User\Detsktop\
rd /s /q SOFTWARE

এটি সফ্টওয়্যার নামক পুরো ফোল্ডার এবং এর সমস্ত ফাইল এবং সাবফোল্ডার মুছে ফেলবে

নিশ্চিত করুন যে আপনি সঠিক ফোল্ডারটি মুছলেন কারণ এটিতে হ্যাঁ / কোনও বিকল্প নেই


4

আপনার যে ফাইলগুলি মুছতে হবে তার একটি এক্সটেনশন রয়েছে txtএবং অবস্থানটিতে অবস্থিত রয়েছে তা বিবেচনা করুন D:\My Folder, তবে আপনি ব্যাট ফাইলের মধ্যে নীচের কোডটি ব্যবহার করতে পারেন।

cd "D:\My Folder"
DEL *.txt 

-7

ব্যাচের কোডে আপনার পথে কোনও স্থান থাকা উচিত না সুতরাং আপনার ফোল্ডারের নামটি "TEST 100%" থেকে "TEST_100%" এ পরিবর্তন করুন এবং আপনার নতুন কোডটি "D: E TEST \ TEST_100% \ সংরক্ষণাগার * .TXT" হবে

আশা করি এটি আপনার সমস্যার সমাধান করবে


6
এর আগে কখনও শুনিনি। এটা কি নতুন? -শাস্কসম বন্ধ। যতক্ষণ আপনি এটিকে উদ্ধৃতি চিহ্নগুলিতে সেট করেন ততক্ষণ এগুলি স্পেসগুলির সাথে কাজ করে।
ব্ল্যাকটেম্পেল
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.