ডিরেক্টরি কাঠামোর একটি নির্দিষ্ট এক্সটেনশন সহ সমস্ত ফাইলকে কীভাবে সংযুক্ত করতে হয়


1

আমি উইন্ডোজ কমান্ড লাইনের জন্য একটি সাধারণ স্ক্রিপ্ট লেখার চেষ্টা করছি যা ডিরেক্টরি কাঠামোর সমস্ত ফাইল (একই ফোল্ডারের ফাইলগুলি পাশাপাশি সেই ডিরেক্টরিতে থাকা অন্য ফোল্ডারগুলি) নেয় এবং সেগুলিকে একটি একক ফাইলের সাথে যুক্ত করে তোলে। এই ক্ষেত্রে আমি কেবল জাভাস্ক্রিপ্ট (* .js) ফাইলগুলি দখল করতে চাই।

এই সাইটে অনুরূপ প্রশ্নগুলি দেখার পরে আমার এখন পর্যন্ত এটিই রয়েছে।

@del pheonix.js
@FOR /R %%i in (*) do @type "%%i"\*.js >> pheonix.js

আমি যখন এটি চালাব তখন আমি পাই "ডিরেক্টরি নামটি অবৈধ" " ভুল কী নিয়ে কোনও ধারণা?

উত্তর:


3

শুধু লুপ ব্যবহার করুন *.jsএবং আপনার কমান্ড থেকে forঅপসারণ ।\*.jstype

এছাড়াও আমি আপনাকে forফাইলটি নিজের মধ্যে সংযোজন করার চেষ্টা এড়াতে আউটপুট ফাইলের জন্য (অন্তত অস্থায়ীভাবে) আলাদা এক্সটেনশন ব্যবহার করার পরামর্শ দিচ্ছি ।

@echo off
del pheonix.js
FOR /R %%i in (*.js) do type "%%i" >> pheonix.tmp
ren pheonix.tmp pheonix.js

আপনি যদি @আপনার ব্যাচ থেকে সরিয়ে ফেলেছিলেন তবে আপনি সহজেই নিজেকে কী ভুল তা দেখতে পাবেন:

D:\temp>FOR /R %i in (*) do type "%i"\*.js  1>>pheonix.js

D:\temp>type "D:\temp\aaa.js"\*.js  1>>pheonix.js
The directory name is invalid.

D:\temp>type "D:\temp\bbbb.js"\*.js  1>>pheonix.js
The directory name is invalid.

D:\temp>type "D:\temp\subfolder\cccc.js"\*.js  1>>pheonix.js
The directory name is invalid.

1
আপনি যদি কেবল *.jsফাইলগুলি চান তবে ব্যবহার করুন FOR /R %i in (*.js)। অন্যথায় এই কমান্ড প্রতিটি ফাইল গ্রহণ করবে।
আলেক্সি ইভানভ

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