最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Shell腳本實(shí)現(xiàn)查找字符串中某字符最后出現(xiàn)的位置

 更新時間:2015年01月23日 11:37:20   投稿:junjie  
這篇文章主要介紹了Shell腳本實(shí)現(xiàn)查找字符串中某字符最后出現(xiàn)的位置,本文給出了Shell腳本和C語言程序的實(shí)現(xiàn)代碼,需要的朋友可以參考下

需要對字符串查找其中某個字符最后出現(xiàn)的位置,這個在PHP (strrpos)或者Perl (rindex)里面都有現(xiàn)成函數(shù)可用的功能,在Shell里面居然一時想不出個道道來。在論壇上發(fā)貼也沒人解答(不知道是問題太簡單還是真的很高深...)。

因為事情緊急等不得,于是求救大學(xué)同學(xué)。Pacman不愧是個中高手,三兩下點(diǎn)醒夢中人:

rindex.sh代碼:

復(fù)制代碼 代碼如下:

#!/bin/bash

strToCheck=$1;
charToSearch=$2;

let pos=`echo "$strToCheck" | awk -F ''$charToSearch'' '{printf "%d", length($0)-length($NF)}'`

echo "char $charToSearch lastpos is: $pos"


使用示例:
復(fù)制代碼 代碼如下:

[zeal]$ sh rindex.sh www.zeali.net .
char . lastpos is: 10

Calfen則提供了一種比較自力更生的方式:自己用c寫了個小程序來實(shí)現(xiàn)rindex的功能,gcc rindex.c -o rindex 之后shell就擁有可以調(diào)用的rindex了 :)
rindex.c代碼:

復(fù)制代碼 代碼如下:

#include <strings.h>
int main(int argc, char *argv[]){
    char* wholeWord;
    char subChar;
    char* subWord;

    int ret;

    if(argc!=3){
        printf("Use:rindex word char\n");
        exit(0);
    }
    wholeWord=argv[1];
    subChar=*argv[2];
    subWord=rindex(wholeWord,subChar);

    if(0 == subWord)
        ret = 0;
    else
        ret = (subWord-wholeWord+1);
    printf("%d\n",ret);
}

相關(guān)文章

  • Linux 添加普通用戶到 sudo 列表的方法

    Linux 添加普通用戶到 sudo 列表的方法

    這篇文章主要介紹了Linux 添加普通用戶到 sudo 列表的方法,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2017-10-10
  • Linux用腳本實(shí)現(xiàn)“時分秒“倒計時功能

    Linux用腳本實(shí)現(xiàn)“時分秒“倒計時功能

    這篇文章主要介紹了Linux用腳本實(shí)現(xiàn)“時分秒“倒計時功能,本文圖文實(shí)例相結(jié)合給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-12-12
  • 虛擬機(jī)中使用linux系啟用文件共享之后的文件存在的位置方法

    虛擬機(jī)中使用linux系啟用文件共享之后的文件存在的位置方法

    下面小編就為大家?guī)硪黄摂M機(jī)中使用linux系啟用文件共享之后的文件存在的位置方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-02-02
  • 阿里云云服務(wù)器Linux系統(tǒng)更新yum源Shell腳本

    阿里云云服務(wù)器Linux系統(tǒng)更新yum源Shell腳本

    這篇文章主要介紹了阿里云云服務(wù)器Linux系統(tǒng)更新yum源Shell腳本,阿里云自建了一個包含大多數(shù)系統(tǒng)更新的本地yum源,速度快又好用,需要的朋友可以參考下
    2014-09-09
  • Linux基礎(chǔ)命令last 命令實(shí)例詳解

    Linux基礎(chǔ)命令last 命令實(shí)例詳解

    Linux last命令用于顯示系統(tǒng)開機(jī)以來獲是從每月初登入者的訊息。本文主要給大家介紹Linux基礎(chǔ)命令last 命令實(shí)例詳解,感興趣的朋友跟隨小編一起看看吧
    2018-10-10
  • shell腳本--sed的用法詳解

    shell腳本--sed的用法詳解

    這篇文章主要介紹了shell腳本--sed的用法詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • shell -z和-n的使用區(qū)別

    shell -z和-n的使用區(qū)別

    本文將深入探討shell命令中的-z和-n選項,通過詳細(xì)解釋這兩個選項的工作原理和用途,幫助讀者更好地理解和掌握Shell腳本編寫,感興趣的可以了解一下
    2024-01-01
  • 腳本批量檢測網(wǎng)站是否存活

    腳本批量檢測網(wǎng)站是否存活

    這篇文章主要介紹了批量檢測網(wǎng)站是否存活的腳本,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-01-01
  • 分享20個Unix/Linux 命令技巧

    分享20個Unix/Linux 命令技巧

    這篇文章主要介紹了分享20個Unix/Linux 命令技巧,需要的朋友可以參考下
    2015-04-04
  • bash shell中的if-then語句

    bash shell中的if-then語句

    bash shell的 if 語句會運(yùn)行 if 后面的那個命令,如果該命令的退出狀態(tài)碼是0,位于 then 部分的命令就會被執(zhí)行,這篇文章主要介紹了bash shell中的if-then語句,需要的朋友可以參考下
    2023-12-12

最新評論

昌宁县| 马山县| 大英县| 武安市| 商河县| 吴堡县| 凉城县| 五河县| 应城市| 随州市| 确山县| 霍山县| 雷州市| 南昌市| 山东省| 莲花县| 张家口市| 永城市| 枝江市| 始兴县| 桓台县| 英山县| 西乌珠穆沁旗| 珠海市| 东明县| 固始县| 吕梁市| 聂荣县| 厦门市| 南投市| 日喀则市| 宁国市| 白银市| 邵阳市| 武川县| 威远县| 深州市| 揭阳市| 河东区| 京山县| 兰坪|