ক্ষেত্রের একটি বিভাগের উপর ভিত্তি করে ফাইলকে কীভাবে সাজানো যায়


11

আমি একটি ফাইল বাছাই করতে চাই:

   D104HN-D104HA      8.320      4.521   1.69e+05 -- 
   D104HN-D104HB*      8.320      2.823   2.93e+05 -- 
   A90HB#-A90HA      1.655      4.207   7.12e+05 -- 
   A90HB#-F91HA      1.653      4.411   8.59e+04 -- 
   A114HB#-A114HA      1.253      4.098   7.67e+05 -- 
   A114HB#-R111HA      1.251      3.929   1.76e+05 -- 
   A114HB#-W110HA      1.253      4.451   3.68e+04 -- 
   F91HE*-F91HZ      7.237      7.122   7.85e+05 -- 
     F91HE*-K92HA      7.242      3.910   4.88e+04 -- 

এবং এটি পেতে

   A90HB#-A90HA      1.655      4.207   7.12e+05 -- 
   A90HB#-F91HA      1.653      4.411   8.59e+04 -- 
   F91HE*-F91HZ      7.237      7.122   7.85e+05 -- 
   F91HE*-K92HA      7.242      3.910   4.88e+04 -- 
   D104HN-D104HA      8.320      4.521   1.69e+05 -- 
   D104HN-D104HB*      8.320      2.823   2.93e+05 -- 
   A114HB#-A114HA      1.253      4.098   7.67e+05 -- 
   A114HB#-R111HA      1.251      3.929   1.76e+05 -- 
   A114HB#-W110HA      1.253      4.451   3.68e+04 -- 

এটি হ'ল লাইনের নন-ফাঁকির প্রথম ক্রমের দ্বিতীয় এবং নিম্নলিখিত বর্ণগুলিতে অঙ্কের অনুসারে বাছাই করুন।


স্পষ্টতই সম্পাদকটি ফাইলটির জন্য আমি যে ফর্ম্যাটটি ব্যবহার করেছিলাম তা
রাখেনি

আপনি কি sortকমান্ড চেষ্টা করেছেন ?
এরিক রেনোফ

হ্যাঁ, তবে আপাতদৃষ্টিতে আমি জানি না আপনি কীভাবে এটি সঠিকভাবে ব্যবহার করবেন .... আমি চেষ্টা করেছি: বাছাই করুন -b + 0.1n -1 তবে সারণি -n -k1,1 -k1,4 (এবং আরও অনেক) কিন্তু এর কিছুই নেই যারা কাজ করেছেন
এডিথ

1
আপনি দ্বিতীয় চরিত্র থেকে শুরু করে নম্বর অনুসারে বাছাই করতে চান?
pfnuesel

উত্তর:


19
sort -k 1.2bn < file

প্রকারের numerically একটি উপর key দিয়ে শুরু 2য় চরিত্র 1St নেতৃস্থানীয় উপেক্ষা ক্ষেত্র blanks (এবং লাইনের শেষে বিভক্তি, কিন্তু যে একটি সংখ্যাসূচক সাজানোর যা শুধুমাত্র দশমিক সংখ্যা প্রাথমিক ক্রম বিবেচনা জন্য কোন ব্যাপার না)।

মনে রাখবেন যে এই দুটি লাইনের মাঝের মতো টাই থাকলে:

    F91HE*-K92HA      7.242      3.910   4.88e+04 --
  F91HE*-F91HZ      7.237      7.122   7.85e+05 --

তারপরে, অর্ডারটি সর্বশেষ-রিসর্ট অনুসারে বাছাই করা হবে যা দুটি রেখাকে সম্পূর্ণ স্ট্রিংয়ের সাথে তুলনা করে।

কয়েকটি লোকেইলে সঙ্গে, ঐ খালি স্ট্রিং যে ক্ষেত্রে F91 এক (যেমন K92 সামনে আসতে হবে তুলনা জন্য প্রথমত উপেক্ষা করা হবে Fসামনে প্রকারের K)। সি লোকেলের মতো অন্যদের সাথে, ফাঁকাগুলি উপেক্ষা করা হবে না এবং K92 এর পরে F91 একের আগে আসবে (স্পেসের ধরণের সাজানোর আগে F)।

সর্বশেষ-রিসর্টের জন্য বাছাইয়ের জন্য যা লোকেল নির্বিশেষে নেতৃস্থানীয় ফাঁকা স্থানগুলি উপেক্ষা করবে, আপনি এটি করতে পারেন:

sort -k 1.2bn -k 1b < file

যে 1bএক (প্রথম কী বন্ধন উপর) সাজাতে হবে আভিধানিক লাইনের বিভাগে যে প্রথম ক্ষেত্রে নেতৃস্থানীয় ভূমিকা পালন ঐ খালি উপেক্ষা সঙ্গে শুরু হয়।

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