ফাইলনামে নতুন লাইন থাকা ফাইলগুলি কীভাবে সন্ধান করবেন?


10

আমি ফাইলের নামে একটি নতুন লাইন রয়েছে এমন ফাইলগুলি সন্ধান করার চেষ্টা করছি। তবে কোন প্যাটার্নটি ব্যবহার করব তা আমি বুঝতে পারি না।

নিম্নলিখিতটি কাজ করে, তবে আমি ইন্ডেন্ট কোডে এটি ব্যবহার করতে চাইলে খুব কার্যকর হয় না।

find . -name '*
*'

আমি এই দুটি চেষ্টা করেছিলাম এবং তারা কেবলমাত্র ফাইলের নামগুলি সন্ধান করতে সফল হয়েছিল যাতে এই চিঠিটি এন রয়েছে :

find . -name '*\n*'
find . -name "*\n*"

তারপরে আমি কীভাবে ব্যাকস্ল্যাশ পালানোর সিকোয়েন্স লিখতে পারি এবং এটি চেষ্টা করেছিলাম:

find . -name "*$'\n'*"

কিন্তু এটি কিছুই খুঁজে পায় না। আমি কীভাবে প্যাটার্নটি লিখব?

উত্তর:


13

শেল স্ক্রিপ্টিং-এ, সবকিছুই একটি স্ট্রিং। আপনি কি উদ্ধৃত করা প্রয়োজন *প্রতিরোধ ফাইলের নাম সম্প্রসারণ , কিন্তু আপনি ডবল কোট ভিতরে ব্যাকস্ল্যাশ পালাবার ক্রম করা করতে চান না।

আপনি কেবল স্ট্রিংগুলিকে একে অপরের ডানদিকে রেখে সংযুক্ত করতে পারেন।

find . -name '*'$'\n''*'

তবে আরও ভাল পাঠযোগ্যতার জন্য, আপনি পুরো স্ট্রিংয়ের জন্য এএনএসআই-সি উদ্ধৃতি ব্যবহার করতে পারেন ।

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