Thursday, March 14, 2013

آموزش خط فرمان-قسمت شانزدهم

در قسمت قبلی اموزشهای خط فرمان اموختیم که چگونه یه فایل متنی را به وسیله خط فرمان بازنموده و محتویات آنرا ببینیم. اما اگر بخواهیم با استفاده از محیط ترمینال مقداری دستکاری در فایل های متنی باز شده بدهیم، دستورات خط فرمان چگونه خواهد بود؟

در این آموزش سعی نموده ایم نحوه ویرایش فایل های متنی را به وسیله خط فرمان لینوکس آموزش دهیم. اهم این دستورات عبارتند از:

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

دستور توضیح
# cat example.txt | awk 'NR%2==1' تمام خطوط زوج را از example.txt حذف كن   
# echo a b c | awk '{print $1}' اولين ستون يك خط را نمايش بده   
# echo a b c | awk '{print $1,$3}' اولين و سومين ستون يك خط را نمايش بده   
# cat -n file1 نمایش سطرهای فایل با شماره   
# comm -1 file1 file2 مقايسه‌ي محتويات دو فايل كه فقط خطوط خاص را از 'file1' حذف مي‌كند   
# comm -2 file1 file2 مقايسه‌ي محتويات دو فايل كه فقط خطوط خاص را از 'file2' حذف مي‌كند   
# comm -3 file1 file2 مقايسه‌ي محتويات دو فايل كه فقط خطوط خاص را كه در دو فايل آمده را حذف مي‌كند   
# diff file1 file2 تفاوت بين دو فايل را نمايان مي‌كند   
# grep Aug /var/log/messages در فايل '/var/log/messages' كلمه‌ي "Aug" را پيدا كن  
# grep ^Aug /var/log/messages در فايل '/var/log/messages' كلمه‌ هايي را كه با "Aug" شروع مي‌شوند پيدا كن   
# grep [0-9] /var/log/messages از فايل '/var/log/messages' تمام خطوطي را كه شامل اعداد هستن نمايش بده   
# grep Aug -R /var/log/* در شاخه‌ي '/var/log' و زير شاخه‌ها كلمه‌ي "Aug" را جستجو كن   
# paste file1 file2 محتويات دو فايل را با ستون با هم ادغام كن   
# paste -d '+' file1 file2 پيوستن محتويات دو فايل براي دو ستون با استفاده از '+' به عنوان تمييز دهنده در وسط   
# sdiff file1 file2 تفاوت بين دو فايل را پيدا كن و به صورت محاوره‌اي با هم ادغام كن   
# sed 's/string1/string2/g' example.txt در فايل example.txt عبارت "string1" را با "string2" جابجا كن   
# sed '/^$/d' example.txt تمام خطوط سفيد را از فايل example.txt پاك كن   
# sed '/ *#/d; /^$/d' example.txt تمام خطوط سفيد و comment ها را از فايل example.txt پاك كن   
# sed -e '1d' exampe.txt خط اول را از فايل example.txt پاك كن   
# sed -n '/string1/p' خطوطي را نمايش بده كه شامل كمله‌ي "string1" باشد   
# sed -e 's/ *$//' example.txt كاركتر خالي در آخر هر سطر را پاك كن   
# sed -e 's/string1//g' example.txt فقط كلمه‌ي "string1" را حذف كن و بقيه را تغيير نده   
# sed -n '1,5p' example.txt سطر اول تا پنجم را از example.txt نمايش بده   
# sed -n '5p;5q' example.txt سطر پنجم را از example.txt نمايش بده   
# sed -e 's/00*/0/g' example.txt صفرهاي متعدد را با يك صفر تعويض كن   
# sort file1 file2 محتوييات دو فايل را به ترتيب كن   
# sort file1 file2 | uniq محتوييات دو فايل را به ترتيب كن و خطوط تكراري را حذف كن   
# sort file1 file2 | uniq -u محتوييات دو فايل را به ترتيب كن و خطوط تكراري نمايش بده   
# sort file1 file2 | uniq -d محتوييات دو فايل را به ترتيب كن و خطوطي را كه دو بار تكرار شده‌اند را نمايش بده   
# echo 'word' | tr '[:lower:]' '[:upper:]' حروف كوچك را به بزرگ تبديل كن   

No comments: