উইন্ডোজ একটি স্ট্রিং প্রতিস্থাপন করতে এসডাব্লু


2

আমার কাছে একটি পাঠ্য ফাইল রয়েছে (আসলে এক্সএমএল) যা আমি একটি কমান্ড লাইন ব্যবহার করে পরিবর্তন করতে সক্ষম হতে চাই। অন্য কথায়, উইন্ডোজ ব্যাচের অংশ হিসাবে, আমি একটি স্ট্রিং সনাক্ত করতে চাই (এই ক্ষেত্রে @@@@, যা ফাইলের অন্য কোথাও উপস্থিত না এমন একটি অক্ষর ব্যবহার করে), এবং তারপরে এটিকে কিছু সরল, যেমন একটি তারিখ '8/18/11'।

কোনও রকম 'গ্রেপ', 'পারল' বা অন্য ধরণের উপায় আছে, সংক্ষিপ্ত ক্রমে, কেবল স্ট্রিংটি প্রতিস্থাপন করুন - আবার, এটি কমান্ড লাইনের মাধ্যমে হওয়া উচিত, যেহেতু আমি প্রক্রিয়াটি স্বয়ংক্রিয় করতে চাই।

ঘটনাচক্রে, আমার পিসিতে অ্যাক্টিভ স্টেট PERL রয়েছে।

উত্তর:


5

ফাইলের findthisসাথে সমস্ত উপস্থিতি প্রতিস্থাপন করতে করতে:replacetoexample.txt

perl -pi -e 's/findthis/replaceto/g' example.txt 

উইন্ডোজে আপনার সাধারণত আর্গুমেন্ট স্ট্রিংগুলি বন্ধ করতে "না" ব্যবহার করা উচিত
RedGrittyBrick

1
নিফেল: খুব সুন্দর উত্তর। আমার ভিস্তার বাক্সে, আমাকে দুটি পরিবর্তন করতে হয়েছিল : "ব্যাকআপ ব্যতীত ইনপ্লেস সম্পাদনা করতে পারবেন না" এটি আমার মধ্যে একটি ত্রুটি ছিল। এবং, যেহেতু তারিখটি অগত্যা '/' চর ব্যবহার করে, তাই আমি '#' একটি ডিলিমিটার হিসাবে ব্যবহার করতে স্যুইচ করেছি। সুতরাং এটি এখানে পার্ল- pi.bak -e এর # @@@@ # 8/19/11 # g 'সম্পাদনাযোগ্য-
ব্যর্থতা.পিগা

2

আপনার কাছে ইতিমধ্যে থাকা উত্তরগুলির সাথে কোনও ভুল নেই, তবে কেবলমাত্র বিকল্পগুলিতে যুক্ত করতে আমি উল্লেখ করব যে আপনি যদি উইন্ডোজ 7 এ থাকেন তবে আপনার পাওয়ারশেলও ইনস্টল করা আছে। অথবা এই বিষয়টির জন্য এটি XP / Vista এ ইনস্টল করা যেতে পারে যদি আপনি এটি চয়ন করেন। তারপর:

$foo = gc C:\Path\To\File.txt; $foo | %{$_.replace('@@@@', '8/1/11')} | Out-File C:\Path\To\File.txt

0

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

বিকল্পভাবে, আপনি ভিবিএস ভাষা (উইন্ডোজ এক্সপি-র জন্য স্ক্রিপ্টিং ভাষা) ব্যবহার করতে পারেন এবং কোনও ফাইলের স্ট্রিং প্রতিস্থাপনের জন্য একটি স্ক্রিপ্ট তৈরি করতে চান (বিশদটির জন্য এই লিঙ্কটি দেখুন ) এবং কমান্ড লাইন থেকে স্ক্রিপ্টটি চালিয়ে ব্যবহার করতে পারেনcscript

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