قم بإزالة السلاسل بعد كل كلمة أولى في ملف نصي

StackOverflow https://stackoverflow.com/questions/1593871

  •  22-09-2019
  •  | 
  •  

سؤال

File1:

hello   (OPTION1)   123456   123456   123456
world   (OPTION1)   123456   123456   123456
foo     (OPTION1)   123456   123456   123456
bar     (OPTION1)   123456   123456   123456

كيف يمكن للمرء إزالة كل سلسلة بعد كل كلمة أولى في ملف textfile1؟

من المحتمل أن يكون هذا معطلاً مع awk/sed/cat - لكن لا يمكنني معرفة ذلك. ما زلت جديدًا في التحرير عبر هذه المرافق - ربما سيستفيد آخرون من سؤالي.

الكلمات الأولى ليست تنبؤية (لا توجد بطاقات برية) ، كل كلمة أولى فريدة من نوعها.

هل كانت مفيدة؟

المحلول

أوعية بطانة واحدة:

awk '{ print $1 }' < inputfile > outputfile

SED One Liner:

sed 's/^\([A-Za-z0-9]*\).*/\1/' < inputfile > outpufile

نصائح أخرى

محاولة

awk '{print $1}' filename > filename2

لماذا تستخدم تلك الأدوات حتى بعد الحصول على أمر CUT

cut -f1 -d"\t" filename

يمكنك فقط تقليم كل شيء من المساحة البيضاء الأولى فصاعدًا:

sed '\s.*$//' <File1

أو للمتعة فقط ، يمكنك القيام بذلك مع بيرل

perl -ne '@a = split ؛ اطبع "$ a [0] n" '<file

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top