shell中字符串操作

shell中的字符串:字符串是shell编程中最常用最有用的数据类型(除了数字和字符串,也没啥其它类型好用了,哈哈),字符串可以用单引号,也可以用双引号,也可以不用引号。单双引号的区别跟PHP类似。

单引号:

  • 单引号里的任何字符都会原样输出,单引号字符串中的变量是无效的
  • 单引号字串中不能出现单引号(对单引号使用转义符后也不行)

双引号:

  • 双引号里可以有变量
  • 双引号里可以出现转义字符

1、拼接字符串

your_name="qinjx"
greeting="hello, "$your_name" !"
greeting_1="hello, ${your_name} !"

echo $greeting $greeting_1

2、获取字符串长度:
string="abcd"
echo ${#string}         #输出:4
解释:# 号用于获取字符串长度

3、提取子字符串
string="alibaba is a great company"
echo ${string:1:4}       #输出:liba
解释:string:1:4  表示的是对字符串string,从位置1 开始,截取4个字符的长度,
字符串的编号是从0 开始的,从左到右,一次为0,1,2...

4、查找子字符串
string="alibaba is a great company"
echo `expr index "$string" is`       #输出:3,这个语句的意思是:找出第一个与is匹配的字符在
字符串中的位置
时间: 2024-10-14 08:56:43

shell中字符串操作的相关文章

c语言中字符串操作的工具类

 1.编写头文件 #define _CRT_SECURE_NO_WARNINGS //#pragmawarning(disable:4996) #include <stdio.h> #include <stdlib.h> #include <string.h> struct CString { char *p;        //保存字符串首地址 int reallength; //实际长度 }; typedef struct CString mystring;//

shell中字符串的截取

shell中字符串的截取介绍9种,以 var=http://www.google.com/test/.html为例 (1)方法一:# 号截取,删除左边字符,保留右边字符. echo ${var#*//} var 是变量名,# 号是运算符,*// 表示从左边开始删除第一个 // 号及左边的所有字符, (*: 匹配0个或多个任意字符) 即删除http:// 结果是 :www.google.com/test.html (2)方法二:## 号截取,删除左边字符,保留右边字符. echo ${var##*

Shell中字符串、数值的比较

原文:http://apps.hi.baidu.com/share/detail/31263915 在shell中字符串与数值的比较方法是不同的,要注意区分 整数比较:    -eq       等于,如:if [ "$a" -eq "$b" ]    -ne       不等于,如:if [ "$a" -ne "$b" ]    -gt       大于,如:if [ "$a" -gt "$b&

python中字符串操作大全

前段时间,闲的蛋疼,重新整理了一下python的学习资料,现在把整理的python中字符串操作分享出来,方便自己和大家今后查询 a = 'SUNW ukong 123456' #print(a.capitalize())      #字符串首字母变成大写 #print(a.casefold())        #将字符串中的大写字母全部变成小写字母 #print(a.center(50,'-'))    #将字符串居中显示,总共50个字符,如果字符串的长度不够50个字符,就在字符串两边补齐‘-’

Python中字符串操作

#Python字符串操作 '''1.复制字符串''' #strcpy(sStr1,sStr2) sStr1 = 'strcpy' sStr2 = sStr1 sStr1 = 'strcpy2' print sStr2 '''2.连接字符串''' #strcat(sStr1,sStr2) sStr1 = 'strcat' sStr2 = 'append' sStr1 += sStr2 print sStr1 '''3.查找字符''' #strchr(sStr1,sStr2) sStr1 = 'st

linux shell中读写操作mysql数据库

本文介绍了如何在shell中读写mysql数据库.主要介绍了如何在shell 中连接mysql数据库,如何在shell中创建数据库,创建表,插入csv文件,读取mysql数据库,导出mysql数据库为xml或html文件, 并分析了核心语句.本文介绍的方法适用于PostgreSQL ,相对mysql而言,shell 中读写PostgreSQL会更简单些.1. 连接mysql 数据库 shell中连接数据库的方法很简单,只需要指定用户名,密码,连接的数据库名称,然后通过重定向,输入mysql的语句

Shell中字符串的截取方法

这篇文章主要介绍了Shell脚本8种字符串截取方法总结,每个方法给出了实例代码和操作结果,一目了然,需要的朋友可以参考下 Linux 的字符串截取很有用.有八种方法. 假设有变量 var=http://www.aaa.com/123.htm. 1. # 号截取,删除左边字符,保留右边字符. 代码如下: echo ${var#*//} 其中 var 是变量名,# 号是运算符,*// 表示从左边开始删除第一个 // 号及左边的所有字符 即删除 http:// 结果是 :www.aaa.com/123

shell中字符串的截取方法、cut基本用法

一.八种基本字符截取方法: 1.使用 # 号操作符.从左边删除第一次出现 substr 左边字符(包括substr ),保留右边字符. 用法为 #*substr 例如: 即删除从左边开始到第一个"//"及其左边所有字符 2.使用 ## 号操作符.从左边删除最后一次出现substr 左边字符(包括substr ),保留右边字符. 用法为 ##*subst 例如: 即删除最后出现的"/"及其左边所有字符 3.使用 % 号操作符.从右边删除第一次出现 substr 右边字

Shell中字符串分割的三种方法

问题:对于’1,2,3,4,5’这样的字符串输出采用,分隔开的1 2 3 4 5 特征:在字符串中没有空格 解决方法1: [plain] view plaincopy #!/bin/bash var=’1,2,3,4,5’ var=${var//,/ }    #这里是将var中的,替换为空格 for element in $var do echo $element done 若原来字符串中有空格如:’mark:x:0:0:this is a test user:/var/mark:nologi