পুনরাবৃত্তভাবে ফাইলগুলি `টাচ to কীভাবে করবেন?


40

আমার প্রায় 5000 টি ফাইলের টাইমস্ট্যাম্প পরিবর্তন করতে হবে।

টাইপিং touch file1.txt, touch file2.txtআমাকে চিরকালের জন্য নিয়ে যাবে।

এর লাইনে কিছু করার উপায় আছে কি touch -R *?


1
আপনি এই বোঝাতে চেয়েছিলেন touch file{1..3}.txt?
অবিনাশ রাজ

2
আপনি কোন শেলটি ব্যবহার করছেন তা নির্দিষ্ট করেননি তবে zsh সহ touch **/*সুবিধাজনক।
মার্ক গ্লিস

@ মার্ক গ্লিস মনে রাখবেন যুক্তি তালিকা সহজেই দীর্ঘ হয়ে যায়।

ব্যাশে আপনার গ্লোবস্টার সেট করা দরকার আগে আপনি স্পর্শ **
ব্যাকন

উত্তর:


71

আপনি findআপনার সমস্ত ফাইল সন্ধান করতে কমান্ডটি ব্যবহার করতে পারেন এবং touchপ্রতিটি পাওয়া ফাইলটিতে এটি ব্যবহার করে কার্যকর করতে পারেন-exec

find . -type f -exec touch {} +

আপনি যদি কেবলমাত্র পাঠ্য ফাইলের জন্য নিজের ফলাফল ফিল্টার করতে চান তবে আপনি ব্যবহার করতে পারেন

find . -type f -name "*.txt" -exec touch {} +

17
আমি -execএর +টার্মিনেটর (পরিবর্তে \;) ব্যবহার করার পরামর্শ দেব । এটি প্রতিটি touchউদাহরণে একাধিক যুক্তি শৃঙ্খলাবদ্ধ করবে (সিস্টেম আর্গুমেন্ট সীমা অবধি) এবং অতএব অনেক কম (এবং সম্ভবত দ্রুত হবে) কাঁটাচামচ করবে ।
অলি


2
এবং একটি শুকনো রান জন্য, কেবল -exec touch {} +অংশটি ছেড়ে দিন , এবং এটি আপনার টার্মিনালে এটি কী প্রভাব ফেলবে তা মুদ্রণ করবে
অ্যালেক্স

5
ধন্যবাদ, যদিও আমি মনে করি 'সন্ধান' তার প্রথম পরামিতিটি অনুপস্থিত। find . -type f -exec touch {} +
গিলটস

আমি যদি কেবল অ্যাক্সেসের সময় পরিবর্তন করতে চাই, পরিবর্তনের সময়টি না? এটি "ফাইন্ড-টাইপ এফ-এক্সেক টাচ -a}} +" হওয়া উচিত?
সপ্তাহের
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.