খালি ফাইল তৈরি করার সময় কেন কেউ 'টাচ ফাইল' ওভার ': >> ফাইল' পছন্দ করতে পারে?


33

কখনই বুঝতে পারেনি যে আপনি এখন পর্যন্ত এটি করতে পারবেন:

: >> file

এটি কার্যত একইরকম বলে মনে হচ্ছে:

touch file

বেশিরভাগ সংস্থানগুলি এই শেল বিল্টিনের উপরে স্পর্শ পছন্দ করে বলে মনে করার কোনও কারণ কি আছে?


7
সংক্ষিপ্ত ফর্মটি শেল সম্পর্কিত হতে পারে, তবে স্পর্শটি স্বতন্ত্র কমান্ড। সুতরাং সংক্ষিপ্ত ফর্মটি নির্ভর করে আপনি কোন শেলটি ব্যবহার করেন (এবং এই অঞ্চলে লোকদের দৃ strong় পছন্দ রয়েছে) কারণ তারা সবাই শর্টকাট সরবরাহ করে না depends touchস্বতন্ত্র থাকা আপনার যা ব্যবহার করা উচিত তা একইভাবে কাজ করবে।
প্যাট্রিক মেভিজেক


6
প্রথম উদাহরণটি সম্পাদনা করা উচিত : >> fileএমনকি এমনকি এমনকি >> fileযাতে তাদের একই প্রভাব হয়, অর্থাত্ ফাইলের বিষয়বস্তু ধ্বংস না করে।
ব্যবহারকারী000001

2
touchপ্রাথমিকভাবে এমটাইম আপডেট করে। এটি বিদ্যমান ফাইলের বিপরীতে খালি করে না >
রেক্সকোগিটানস 26:38

2
কমান্ড "খালি ফাইল তৈরি করে না"; ফাইলটির উপস্থিতি না থাকলে কেবলমাত্র তাদের কাছে এই ফলাফলটি রয়েছে। একটি খালি ফাইল গ্যারান্টি, আপনার প্রয়োজন > file
অ্যালেক্সিস

উত্তর:


47

আপনি এমনকি ব্যবহার করার প্রয়োজন নেই :; আপনি ঠিক করতে পারেন > file(কমপক্ষে bash; অন্যান্য শেলগুলি আলাদাভাবে আচরণ করতে পারে)।

ব্যবহারিক ভাষায়, এখানে কোনও আসল পার্থক্য নেই (যদিও কল করার /bin/touchক্ষেত্রে ওভারহেডটি একটি জিনিস)

touchতবে ইতিমধ্যে কোনও ফাইলের টাইমস্ট্যাম্পগুলি সংশোধন করতে ব্যবহার করা যেতে পারে যা ইতিমধ্যে সামগ্রী পরিবর্তন বা মুছে ফেলা ছাড়াই বিদ্যমান; আরও, ইতিমধ্যে বিদ্যমান যেকোনটিকে ফুটিয়ে > fileতুলবে file। পরিবর্তে এটি ব্যবহার করে কাজ করা যেতে পারে >> file

এর সাথে অন্য একটি পার্থক্য touchহ'ল আপনি এটিকে touch foo bar baz quuxপুনরায়নির্দেশের চেয়ে আরও বেশি সংক্ষিপ্ত সিনট্যাক্স সহ একবারে (যেমন ) একাধিক ফাইল তৈরি করতে (বা টাইমস্ট্যাম্প আপডেট করতে) করতে পারেন , যেখানে প্রতিটি ফাইলের নিজস্ব পুনঃনির্দেশের প্রয়োজন (যেমন >foo >bar >baz >quux)।

ব্যবহার touch:

$ touch foo; stat -x foo; sleep 2; touch foo; stat -x foo
  File: "foo"
  Size: 0            FileType: Regular File
  Mode: (0644/-rw-r--r--)         Uid: (991148597/redacted)  Gid: (1640268302/redacted)
Device: 1,5   Inode: 8597208698    Links: 1
Access: Fri May 25 10:55:19 2018
Modify: Fri May 25 10:55:19 2018
Change: Fri May 25 10:55:19 2018
  File: "foo"
  Size: 0            FileType: Regular File
  Mode: (0644/-rw-r--r--)         Uid: (991148597/redacted)  Gid: (1640268302/redacted)
Device: 1,5   Inode: 8597208698    Links: 1
Access: Fri May 25 10:55:21 2018
Modify: Fri May 25 10:55:21 2018
Change: Fri May 25 10:55:21 2018

পুনঃনির্দেশ ব্যবহার:

$ > foo; stat -x foo; sleep 2; >> foo; stat -x foo
  File: "foo"
  Size: 0            FileType: Regular File
  Mode: (0644/-rw-r--r--)         Uid: (991148597/redacted)  Gid: (1640268302/redacted)
Device: 1,5   Inode: 8597208698    Links: 1
Access: Fri May 25 10:55:21 2018
Modify: Fri May 25 10:56:25 2018
Change: Fri May 25 10:56:25 2018
  File: "foo"
  Size: 0            FileType: Regular File
  Mode: (0644/-rw-r--r--)         Uid: (991148597/redacted)  Gid: (1640268302/redacted)
Device: 1,5   Inode: 8597208698    Links: 1
Access: Fri May 25 10:55:21 2018
Modify: Fri May 25 10:56:25 2018
Change: Fri May 25 10:56:25 2018

6
দেখে মনে হচ্ছে >> fileপরিবর্তনের সময়টি আপডেট করবে না। ওপি যা খুঁজছে তা নয় তবে কেবল এটি উল্লেখ করতে চেয়েছিল এটি স্পর্শ করার সম্পূর্ণ বিকল্প বলে মনে হচ্ছে না।
জেসি_বি 25'18

2
যেহেতু প্রশ্নটি একটি নির্দিষ্ট শেল নির্দিষ্ট করে না। এটি উল্লেখ করা ভাল হতে পারে যে > filezsh এর সমতুল্য cat > file, না : > file
জোল

এছাড়াও, tshsh অনুমতি দেয় : > fileতবে ভুল হয় > file। হয়তো এর সমানতা > fileকরার : > fileবোর্ন শেল এবং ব্যাশ সীমাবদ্ধ?
জোল

পূর্ণতার জন্য +1, তবে নোট করুন যে বেশ কয়েকটি মূলধারার শেলগুলিতে (আমি এমনকি সমস্ত বা বেশিরভাগ শেলও অনুমান করতে পারি কারণ সর্বাধিক সাধারণ বাস্তবায়ন স্বাভাবিকভাবেই এটি একটি পার্শ্ব-প্রতিক্রিয়া হিসাবে কাজ করবে), আপনি শেল পুনর্নির্দেশটি ব্যবহার করে একাধিক ফাইল স্পর্শ করতে পারেন: : >foo >barবা : >>foo >>barহবে উভয় স্পর্শ fooএবং bar
mtraceur

এখানে প্রকৃত প্রশ্নের প্রসঙ্গে কেবল পেডেন্টিক হতে : >foo >barহবে , তবে touchফাইলগুলি হবে না ; এটি (নাল) আউটপুট পুনর্চালনা করবে : মধ্যে ফাইল। touchফাইল স্পর্শ করবে। (:
দোপগোতি

32

কারণ আপনি touchকোনও অতিরিক্ত বিশেষ অক্ষর টাইপ না করে একসাথে একাধিক ফাইল করতে পারেন। যে বক্রবন্ধনী সম্প্রসারণ, যেমন ভালো জিনিস অন্তর্ভুক্ত touch file{1,2,3,4}

আরেকটি বিষয় হ'ল আপনি যখন টিউটোরিয়াল লিখছেন তখন বুঝতে হবে যে আপনার পাঠকরা সম্ভবত বিষয়টিতে খুব ভাল পারদর্শী নন। একটি সরল কমান্ড হ'ল অক্ষরযুক্ত অক্ষরের কিছু অদ্ভুত চেহারার সংমিশ্রণের চেয়ে অনেক বেশি বোঝা যায়। আমি নৈমিত্তিক শেল ব্যবহারকারী যারা তা জানি না একটি নম্বর আছে আশা :সহজ কারণে যে এটা সত্যিই নেই জন্য, না কিছু। একইভাবে > fooকমান্ড ব্যতীত সমভূমিগুলির জন্য : আপনি যদি পুনরায়নির্দেশ কী তা জানেন তবে উত্স ব্যতীত পুনঃনির্দেশটি অনিচ্ছুক হতে পারে।

এছাড়াও, এখানে ইউনিক্সে আমরা প্রম্পটটি নির্দেশ করতে প্রায়শই একটি অগ্রণী ডলার চিহ্ন সহ কমান্ড নমুনাগুলি লিখি। লাইনের শুরুতে বিশেষ অক্ষরগুলি এতে বিভ্রান্ত হতে পারে। (দ্রষ্টব্য যে এখানে এমন সিস্টেম এবং শেল রয়েছে যা >ডিফল্ট প্রম্পটের অংশ হিসাবে ব্যবহার করে ))


4
এবং যদি কমান্ডটি পুরোপুরি বোঝা না যায় তবে সর্বদা "ম্যান টাচ" থাকে। আমি সন্দেহ করি যে "ম্যান:> ফাইল" কোনও কার্যকর কিছু ফিরিয়ে আনবে :-) এছাড়াও ডাব্লুআরটি অনুরোধ জানায়, কিছু (সম্ভবত বেশিরভাগ) আপনাকে প্রম্পটটি আপনার পছন্দ মতো কিছু সেট করার অনুমতি দেয়। খনি সিস্টেমের নাম (কারণ আমি প্রচুর দূরবর্তী এক্সটার্ম ব্যবহার করি) এবং বর্তমান ডিরেক্টরি দেখায় এবং বিভিন্ন সিস্টেমে বিভিন্ন রঙে সেট করা থাকে।
জামেএসকিফ

1
@ জামেস্কেফ, হ্যাঁ এখন, অবশ্যই আছে help :বা ডকুমেন্টেশনের জন্য আপনার শেলটি যা আছে। তবে এর জন্য :নিজের মধ্যে একটি কমান্ড হিসাবে স্বীকৃতি প্রয়োজন , মনে রাখতে হবে যে সমস্ত কিছুতে একটি ম্যান পৃষ্ঠা নেই এবং শেষ পর্যন্ত :ডকুমেন্টেশনে সন্ধান করতে সক্ষম হবেন । শেষ অংশটি বেশ কঠিন হতে পারে। : ডি
ilkkachu

@ জামেস্কেফ, এবং হ্যাঁ, আমি বেশিরভাগই ডিফল্ট প্রম্পটের চূড়ান্ত চরিত্র বোঝাতে চাইতাম।
ইলকচাচু

1
অন্তর্দৃষ্টি নির্দেশ করার জন্য এবং অ-অস্পষ্ট-গঠন দিকগুলি তৈরি করার জন্য +1 ।
mtraceur

@ ইল্ক্কাছু: হ্যাঁ। ডকুমেন্টেশনে
কলোনের সন্ধান করা ততটা

18

ঠিক আছে, আমার জন্য, প্রাথমিক কারণটি পঠনযোগ্যতা। সঙ্গে touch fileআপনি কি জানেন কি হচ্ছে, কেউ এমনকি বেশ শেল স্ক্রিপ্টিং জানে কি হচ্ছে শিক্ষিত নয়। এবং যদি তা না হয় তবে এটি করা সহজ man touchএবং এটি দেখতে সহজ :

A FILE argument that does not exist is created empty

:এবং যেমন ক্রিপ্টিক স্টাফগুলির সাথে >, কী হচ্ছে তা জানা আরও কঠিন এবং এর কোনও সত্যিকারের সুবিধা নেই বলে এটি ব্যবহার করার দরকার নেই।


6

কল্পনা করুন যে আপনি আপনার পুরানো শেল স্ক্রিপ্টগুলির একটিতে সন্ধান করছেন যা আপনি কেবল মনে রাখবেন / tmp এ কিছু মার্কার ফাইল তৈরি হচ্ছে। "স্পর্শ" শব্দের জন্য আপনার সমস্ত * .sh ফাইলগুলি গ্রেপ করা সহজ। পরিবর্তে কোন কোলনের জন্য গ্রিপিং করা হলে অনেকগুলি মিথ্যা ইতিবাচক ফল পাওয়া যায় যদি আপনি না জানেন তবে কোন সঠিক ফাইল নামটি অনুসন্ধান করতে হবে।

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