ইউনিটগুলিতে নামগুলি পরিবর্তন না করে (ডট যোগ করে) ফাইলগুলি লুকান যাতে স্ক্রিপ্টগুলি যেগুলি ব্যবহার করে সেগুলি এখনও কাজ করে [সদৃশ]


0

এই প্রশ্নটি ইতিমধ্যে একটি উত্তর আছে:

সংক্ষিপ্ত সংস্করণ : আমি নির্দিষ্ট ফাইল আউটপুট উপস্থিত থেকে প্রতিরোধ করতে সক্ষম হতে চাই ls, ডট ছাড়া, এবং এইভাবে তাদের নাম পরিবর্তন ছাড়া।

দীর্ঘ সংস্করণ : সাম্প্রতিককালে, আমি জিনিসগুলি সংগঠিত রাখতে অন্য ডিরেক্টরিতে স্ক্রিপ্ট এবং ডেটা ফাইলগুলির একটি গুচ্ছ সরানো হয়েছে। আমার পুরোনো স্ক্রিপ্টগুলির অনেকগুলি এই ফাইলগুলিতে অ্যাক্সেস প্রয়োজন, এবং তাই আমি পশ্চাদপট সামঞ্জস্যের জন্য সিমলিঙ্ক তৈরি করেছি। যাইহোক, ফাইল সরানোর বিন্দুটি মূল ফোল্ডারটিকে পরিষ্কার রাখতে হয়, তাই আমি সিমলিঙ্ক দেখতে চাই না। কিন্তু তাদের নাম পরিবর্তন না করে কীভাবে আমি তাদের লুকিয়ে রাখতে পারি (বিন্দু যোগ করা), এবং এইভাবে আমার পুরানো স্ক্রিপ্টগুলি ভাঙ্গতে পারি?


2
আমি এই সম্ভব না মনে করি। কেন আপনি আপনার স্ক্রিপ্ট, কিছু ভালো ব্যাচ সম্পাদনা করবেন না sed -i '#/old/path/#/new/path#g' scripts/*sh?
terdon

আপনি আপনার প্যাথ উপর স্থাপন একটি ডিরেক্টরি মধ্যে স্ক্রিপ্ট রাখুন
Der Hochstapler

@ টিম, লিঙ্কযুক্ত থ্রেডে, ওপি এর প্রশ্নটি আরো সাধারণ, এবং উত্তরগুলি যা আমি সম্পন্ন করার চেষ্টা করছি তার জন্য প্রযোজ্য নয়। আমি মনে করি এই ফাইলগুলি কমান্ড লাইনে লুকানো উচিত এবং অন্যান্য স্ক্রিপ্টগুলি এখনও পুরানো পাথ ব্যবহার করতে সক্ষম হওয়া উচিত, নতুন তথ্য প্রদান করে।
antass

@ ওলিভার, যতক্ষণ না আমি কিছু ভুল বুঝেছি .. আপনি কি সেই স্ক্রিপ্ট গুলো বুঝিয়েছেন যা আমি সিম্পলিং করেছি? যদি তাই হয়, আমি তথ্য ফাইল সরানো এবং symlinked, যাতে কাজ করবে না: /
antass

প্রতিক্ষেপক্ষে, আমার জন্য সবচেয়ে ভাল জিনিস একটি ফাইলের উৎস এবং গন্তব্য পথগুলি সংরক্ষণ করা হয়েছে এবং তারপরে আমার স্ক্রিপ্টগুলিকে পুনরায় লেখার জন্য অভিধান হিসাবে ব্যবহার করুন।
antass

উত্তর:


1

দুর্ভাগ্যক্রমে, এটি সম্ভব নয় (আপনার নিজের নিজস্ব সংস্করণ প্রোগ্রামিং ছাড়াই ls )। করতে ভাল জিনিস শুধু আপনার স্ক্রিপ্ট সম্পাদনা হয়।

এটা হয় সঙ্গে globs দ্বারা মিলিত হচ্ছে থেকে নির্দিষ্ট ফাইলের নাম প্রতিরোধ সম্ভব $GLOBIGNORE গ্লোবাল পরিবর্তনশীল।

$ printf '%s\n' *
foo.txt
bar.txt
baz.txt
$ GLOBIGNORE=foo.txt:baz.txt
$ printf '%s\n' *
bar.txt

আপনি যদি সত্যিই চান, আপনি আপনার মধ্যে একটি উপনাম সেট করতে পারে .bashrcযেখানে আপনি সেট করতে পারেন $GLOBIGNORE উপরে পরিবর্তনশীল।

alias myls='ls -d *'

যাইহোক, এই সম্ভবত আপনি লাইন বরাবর কোথাও সমস্যা হতে হবে। আপনার স্ক্রিপ্টগুলি সম্পাদনা করার জন্য এটি সত্যিই একটি ভাল ধারণা হবে (সম্ভবত ট্র্যাডগুলি ব্যবহার করার জন্য sed ব্যবহার করুন, যেমন @ টিটারন প্রস্তাবিত)।


DEFCON1 থেকে একের সাথে এই উত্তরটি মিশ্রিত করা, আপনি ব্যবহার করতে পারেন GLOBIGNORE=$(tr '\n' ':' < .hidden) ফাইল লুকান। যে বলেন $GLOBIGNORE আমার সিস্টেমে কাজ বলে মনে হচ্ছে না।
Tim

আমি একমত, স্ক্রিপ্টটি সম্পাদনা করা সহজ (দীর্ঘমেয়াদী) এবং এটি করার সবচেয়ে মার্জিত উপায় বলে মনে হচ্ছে। আমি কেবল অলস এবং আমি এমন ফাইলগুলিতে পুনরায় লেখার পথগুলি এড়ানোর চেষ্টা করছি যা এক ফোল্ডারে শেষ হয়নি, তবে subfolders একটি আরো জটিল গঠন।
antass

@ ইভিলসুপ, আপনি সঠিক, আলাইজিং ls ভাল শেষ নাও হতে পারে, বিশেষত যেহেতু আমি আসলেই দেখতে চাই সিমলিংকগুলির কিছু। আমি কেবল সম্প্রতি সরানো ফাইলগুলিতে সিমলিঙ্কগুলিকে লুকিয়ে রাখতে চাই। আমি চেক আউট করব $GLOBIGNORE ব্যবসা .. মত শব্দ .gitignore, যা আমি অর্জন করতে চাই ঠিক পদ্ধতি।
antass

@ এন্টাস প্রকৃত সমস্যাটি $ গ্লোববিনগোরের সাথে এটি বিশ্বব্যাপী; যদি আপনি সেট GLOBIGNORE=foo.txt, তাহলে না foo.txt সিস্টেমের কোথাও একটি glob দ্বারা মিলিত হবে। এটি স্ক্রিপ্টগুলির সাথে একটি সমস্যা হবে না, তবে এটি কমান্ড লাইনের জন্য সমস্যা সৃষ্টি করতে পারে।
evilsoup

1

আপনার লিনাক্স সিস্টেমের মধ্যে নটিলাস ফাইল ম্যানেজার ইনস্টল থাকলে, আপনি ফাইল ম্যানেজার (নটিলাস) থেকে এটি লুকাতে পারেন, এটি CLI- এ অদৃশ্য না করে এবং ডটটি ব্যবহার না করেই।

লুকানো ফাইল / ফোল্ডার তালিকা সহ। Hidden ফাইল তৈরি করুন।

এই বৈশিষ্ট্যটি ব্যবহার করতে, কেবল এমন একটি ফাইল তৈরি করুন যা "লুকানো" (বিন্দু লুকানো) রয়েছে এমন একটি ফোল্ডারে থাকা ফাইল যা আপনি লুকাতে চান। তারপরে টেক্সট এডিটর এ খুলুন এবং তারপর "hidden" ফাইল ধারণকারী ফোল্ডারে লুকানো লুকানো ফাইল / ফোল্ডারগুলির নামের তালিকা তৈরি করুন।

আপনি "dot" ব্যবহার না করে ls থেকে ফাইলগুলি লুকাতে পারবেন না তবে আপনি chmod এর সাথে কিছু ব্যবহারকারীর জন্য ফাইল ধারণকারী ডিরেক্টরিটির অনুমতি পরিবর্তন করতে পারেন এবং এটিতে অ্যাক্সেসযোগ্য করতে পারেন।


AFAIK এটি শুধুমাত্র নটিলাস নয়, অধিকাংশ গ্রাফিক্যাল ফাইল পরিচালকদের উপর কাজ করে।
evilsoup

অপারেটিং সিস্টেমের জন্য এটি কীভাবে করতে হয় তা জিজ্ঞাসা করছে OP ls
terdon

আপনি কিভাবে অদৃশ্য ফাইল ব্যবহার করে রেন্ডার করতে পারেন chmod? আপনি একটি সম্পূর্ণ ডিরেক্টরি প্রবেশযোগ্য রেন্ডার করতে পারেন, কিন্তু ফাইলগুলি প্রদর্শিত হয় এমন ভাবে প্রভাবিত করতে পারে না।
terdon

হ্যাঁ এটি সঠিক, এমনকি যদি এটি অ্যাক্সেস করা যায় না তবে এটি এখনও দৃশ্যমান হবে।
Ashildr

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