امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
سوال درباره دستور awk
نویسنده پیام
alireza-l آفلاین
تازه وارد

ارسال‌ها: 8
موضوع‌ها: 2
تاریخ عضویت: فروردین ۱۳۹۰

تشکرها : 5
( 1 تشکر در 1 ارسال )
ارسال: #1
سوال درباره دستور awk
با سلام و احترام
ميخواهم با استفاده از دستور awk به اول و انتهاي يكي از ستون هاي فايلم علامت " اضافه كنم
ممنون مي شوم راهنمايي بفرماييد .
(آخرین ویرایش در این ارسال: ۲۰-فروردین-۱۳۹۰, ۱۳:۲۴:۰۲، توسط alireza-l.)
۲۰-فروردین-۱۳۹۰, ۱۳:۲۳:۲۴
ارسال‌ها
پاسخ
babyy آفلاین
بازنشسته
*****

ارسال‌ها: 3,095
موضوع‌ها: 141
تاریخ عضویت: مرداد ۱۳۸۷

تشکرها : 35081
( 26090 تشکر در 9068 ارسال )
ارسال: #2
RE: سوال درباره دستور awk
سلام

اطلاعاتی که دادین کمه ؛
برای اینکه همون چیزی که میخوایین رو آماده کنم ؛ ینمونه مثال بزنید و مقداری از فایل رو آپلود کنید

-----------
برای مثال هم این کد هر خط فایل رو بین " میزاره :

کد:
awk '{print "\""$0"\"";}'

برای امتحان :

کد:
echo -e "salam1\nsalam2\nsalam3"
salam1
salam2
salam3

و بعد از پایپ شدن :

کد:
echo -e "salam1\nsalam2\nsalam3"| awk '{print "\""$0"\"";}'
"salam1"
"salam2"
"salam3"

(آخرین ویرایش در این ارسال: ۲۰-فروردین-۱۳۹۰, ۲۱:۴۳:۰۷، توسط babyy.)
۲۰-فروردین-۱۳۹۰, ۲۱:۳۶:۴۶
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : alireza-l
alireza-l آفلاین
تازه وارد

ارسال‌ها: 8
موضوع‌ها: 2
تاریخ عضویت: فروردین ۱۳۹۰

تشکرها : 5
( 1 تشکر در 1 ارسال )
ارسال: #3
RE: سوال درباره دستور awk
سلام
ممنون babyy عزيز
با مثالي كه برام زديد مشكلم حل شد .
با تشكر فراوان
۲۱-فروردین-۱۳۹۰, ۰۷:۴۵:۱۱
ارسال‌ها
پاسخ
alireza-l آفلاین
تازه وارد

ارسال‌ها: 8
موضوع‌ها: 2
تاریخ عضویت: فروردین ۱۳۹۰

تشکرها : 5
( 1 تشکر در 1 ارسال )
ارسال: #4
RE: سوال درباره دستور awk
سلام
من مي خواستم با استفاده از روشي كه مثال زديد براي درج علامت " (كوتيشن) در فايل متني علامت ديگري بذارم ولي موفق نشدم !
فرض بفرماييد فايل متني زير را دارم
red ali tree
blue hosain window
green reza pen
حال ميخواهيم با استفاده از دستور awk‌ اسامي(ali,hosain,reza) داخل ' قرار بگيرند ، يعني
red 'ali' tree
blue 'hosain' window
green 'reza' pen
اگر لطف بفرماييد مجددا راهنمايي بفرماييد ، ممنون مي شوم .
با تشكر
۲۱-فروردین-۱۳۹۰, ۱۰:۱۲:۵۴
ارسال‌ها
پاسخ
تشکر شده توسط : babyy
babyy آفلاین
بازنشسته
*****

ارسال‌ها: 3,095
موضوع‌ها: 141
تاریخ عضویت: مرداد ۱۳۸۷

تشکرها : 35081
( 26090 تشکر در 9068 ارسال )
ارسال: #5
RE: سوال درباره دستور awk
سلام
خواهش میکنم :)

جای تمامی اسامی در ستون دوم است ؟؟

---------------------------------------------
*-سوال خوبی بپرسیدید :) ؛ اگه جای اسامی در ستون مشخصی نباشه خودم هم نمیدونم با awk چجور میشه درش آورد !! (یک مقدار با عباراتش مشکل دارم ؛ روش حل رو میدونم) من تا الا اینکار رو با sed میکرم اما با awk اینکارو نکرده بودم ؛ میرم دنبالش به نیحه رسیدم تو همین صفحه میزارم (با تشکر از سوالتون )
(آخرین ویرایش در این ارسال: ۲۲-فروردین-۱۳۹۰, ۰۲:۵۷:۰۹، توسط babyy.)
۲۲-فروردین-۱۳۹۰, ۰۲:۵۴:۴۷
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : alireza-l
alireza-l آفلاین
تازه وارد

ارسال‌ها: 8
موضوع‌ها: 2
تاریخ عضویت: فروردین ۱۳۹۰

تشکرها : 5
( 1 تشکر در 1 ارسال )
ارسال: #6
RE: سوال درباره دستور awk
سلام وعرض ادب
ممنون از حسن توجه تون
آره ، همه اسامي در يك ستون مشخص ( مثلا ستون دوم) واقع شده اند .
ممنون مي شوم هر زمان راه حلي پيدا كرديد ، راهنمايي بفرماييد .
با آرزوي موفقيت .
۲۲-فروردین-۱۳۹۰, ۰۷:۲۹:۴۹
ارسال‌ها
پاسخ
babyy آفلاین
بازنشسته
*****

ارسال‌ها: 3,095
موضوع‌ها: 141
تاریخ عضویت: مرداد ۱۳۸۷

تشکرها : 35081
( 26090 تشکر در 9068 ارسال )
ارسال: #7
RE: سوال درباره دستور awk
سلام

خب ؛ راه پیدا شد :)

فقط این نکته رو بگم به علت گستردگیه ابن برنامه ها هر کس از یه راه حلی میره ؛ شاید من به علت ناواردی زیاد پیچوندم ؛ پس از این بابت عذر میخوام ؛

*----------------------------
کد php:
{
A[0]="reza"
A[1]="red"
A[2]="blue"

for (i in A){

if (match($
A[i])){


sub (A[i] , "'"A[i]"'" , $0)


print $
0

}
}


نحوه اجرا :

کد php:
awk -f 1.awk files 


برنامه بالا رو با نام awk.1 ذخیره کنید و اجراش کنید ؛ files نام فایلهاتونه

توضیحش اینطوره که تایع جایگزین؛ sub هستش !
این مثال بالا هر لغت رو که در جای جمله باشه ؛ اطرافش ' میگیره !

این مثال یه مثال کامل هستش تقریبا واسه کاری که میخوایین بکنید؛ که میتونید تحلیلش کنید و بنا به کارتون تغییرش بدید

با توجه به بالا اون مثالی که زدین فقط در ستون دوم هستند اسامی ؛ میشه به راحتی با sub تقریبا در یک در خط درش آورد !

سوال و تمرینات جالب دیگری هم دارین مشتاقانه گوش میدم :)
(آخرین ویرایش در این ارسال: ۲۳-فروردین-۱۳۹۰, ۰۴:۲۱:۰۹، توسط babyy.)
۲۳-فروردین-۱۳۹۰, ۰۴:۱۶:۴۴
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : alireza-l, Bersam
alireza-l آفلاین
تازه وارد

ارسال‌ها: 8
موضوع‌ها: 2
تاریخ عضویت: فروردین ۱۳۹۰

تشکرها : 5
( 1 تشکر در 1 ارسال )
ارسال: #8
RE: سوال درباره دستور awk
سلام
با عرض تشكر babyy عزيز ، لطف كرديد .
ممنون ، حتما اگر به مشكلي در اين خصوص برخورد كردم مزاحم مي شم .
با تشكر فراوان از راهنماي تون .
۲۳-فروردین-۱۳۹۰, ۰۸:۴۵:۱۸
ارسال‌ها
پاسخ


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  سوال 2 درباره دستور awk alireza-l 4 3,673 ۲۹-فروردین-۱۳۹۰, ۰۷:۳۶:۲۸
آخرین ارسال: alireza-l
  دستور ls -la Mahdikatkhoda 1 3,687 ۲۹-آذر-۱۳۸۸, ۱۲:۴۳:۴۳
آخرین ارسال: dreamvbfox
  چند دستور از linux lord_viper 1 4,038 ۱۴-مهر-۱۳۸۷, ۰۰:۱۸:۲۸
آخرین ارسال: t3r!p3000

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 5 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS