常用命令行字符串操作指令

不定期更新。。

Windows

在指定文件中查找字符串:

1
findstr "#define BUILD_VERSION" main.c

将某条指令返回值的第一行存在一个名为temp的变量中:

1
for /f "delims=" %%1 in ('findstr "#define BUILD_VERSION" main.c')do set temp=%%1

将temp中”BUILD_VERSION “左侧字符替换为空字符串,然后保留到version中:

1
set "version=%temp:*BUILD_VERSION =%"

Linux

在指定文件中查找字符串:

1
grep "#define BUILD_VERSION" main.c

将某条指令返回值的第一行存在一个名为temp的变量中:

1
temp=$(grep "#define BUILD_VERSION" main.c)

将temp中”BUILD_VERSION “左侧字符替换为空字符串,然后保留到version中(从左到右非贪婪匹配使用#,从右到左非贪婪匹配使用%):

1
version=${temp#*BUILD_VERSION }

3/19/2018更新:
判断字符串变量sw_version的长度:

1
2
3
if [ "${#sw_version}" = "5" ]; then

fi

读取文件某一行:

1
cat url.txt|sed -n '1p'

把字符串中的\n替换为换行:

1
2
eol=$'\n'
str="${str//\\n/$eol}"

//同样适用于其他替换的场合