اطلاعیه

بستن
هنوز اطلاعیه ای در دست نیست.

نحوه فیلتر کردن 10 رقم آخر یک شماره یا حرف در لینوکس

بستن
X
 
  • فیلتر کردن
  • زمان
  • نمایش
Clear All
پست های جدید

    نحوه فیلتر کردن 10 رقم آخر یک شماره یا حرف در لینوکس

    امروز سناریوی برام پیش اومد که مجبور بودم با استفاده از یک API به یک وب سروری وصل بشم و از خروجی دستور زیر، که یک شماره تلفن را برای من در شل لینوکس نمایش میداد. ("phone": "+989203716705")

    کد PHP:
    [root@localhost ~]# curl -s 'http://172.17.100.10:8080/habili/2'
    {
      
    "id"2,
      
    "phone""+989121115500"
    }[root@localhost ~]
    سناریو من طوری بود که میخواستم تنها از 10 رقم آخرش (از سمت راست) خروجی بگیرم و به یک اسکریپت دیگه پاس بدهم. برای این کار ابتدا از دستور grep و awk به جهت فیلتر کردن 10 رقم آخر این شماره استفاده کردم ولی خروجی که میخواستم را بهم نمیداد. بعد از کلی سرچ و جستجو موفق شدم با ترکیب دستورات tail و head خروجی مورد نظرم رو به دست بیارم. البته این خروجی رو به دو روش من به دست آورد که در اینجا برای شما هم به اشتراک میگذارم که شما هم استفاده کنید.

    روش اول :

    کد PHP:
    [root@localhost ~]# curl -s 'http://172.17.100.10:8080/habili/2' | tail -c 13 | head -c 10 

    روش دوم :

    کد PHP:
    [root@localhost ~]# curl -s 'http://172.17.100.10:8080/habili/2' | awk  -n 'BEGIN {FS = """} ; /"phone":/ { print substr($4,length($4)-9,length($4))}' 
    امیدوارم مفید واقع شده باشه.

درباره انجمن منطقه لینوکسی ها

انجمن منطقه لینوکسی ها با هدف ارتقاء سطح علمی کاربران در سطح جهانی و همچنین کمک به بالا بردن سطح علمی عمومی در زمینه های تخصصی فوق پایه گذاری شده است. انجمن منطقه لینوکسی ها از طریق کارشناسان و متخصصان پاسخگوی سوالات گوناگون کاربران مبتدی یا پیشرفته میباشد تا حد امکان تلاش شده که محیطی متنوع و کاربر پسند و به دور از هرگونه حاشیه جهت فعالیت کاربران در این انجمن ایجاد شود. لذا ما به صورت مستمر برای پیشرفت کمی و کیفی محتوی و اطلاعات انجمنمان میکوشیم که این برای ما ارزشمند و حائز اهمیت است. کلیه حقوق،اطلاعات و مقالات در این انجمن متعلق به سایت منطقه لینوکسی ها میباشد، و هرگونه نسخه برداری بدون ذکر منبع مورد پیگرد قانونی خواهد شد.

شبکه های اجتماعی
در حال انجام ...
X