linux shell批處理去除指定字元前所有的0
批處理去除指定字元前所有的0
題目
有文字 1.txt
0000acb0h
0b0c00a000s
0000h00ga00
a0000000
要求
通過批處理將文字所有字串字元a前的0去除輸出如下
acb0h
bca000s
hga00
a0000000
編寫程式碼
#! /bin/bash
file=./1.txt
before=a
replace=0
while read line
do
len=${#line}
i=0
str= #保留指定字元前面字元
while [ ${i} -lt ${len} ]
do
c=${line:${i}:1}
#判斷是否在指定字元之前
if [ "${c}" == "${before}" ]
then
break
fi
#是否為需要刪除的字元
if [ "${c}" != "${replace}" ]
then
str=${str}${c}
fi
let i++
done
# 保留指定字元後面的內容
suffix=${line:${i}}
echo ${str}${suffix}
done < ${file}
執行結果
---------------------
作者:dengjili
來源:CSDN
原文:https://blog.csdn.net/dengjili/article/details/78073585
版權宣告:本文為博主原創文章,轉載請附上博文連結!
批處理去除指定字元前所有的0
題目
有文字 1.txt
0000acb0h
0b0c00a000s
0000h00ga00
a0000000
要求
通過批處理將文字所有字串字元a前的0去除輸出如下
acb0h
bca000s
hga00
a0000000
編寫程式碼
#! /bin/bash
file=./1.txt
before=a
replace=0
while read line
do
len=${#line}
i=0
str= #保留指定字元前面字元
while [ ${i} -lt ${len} ]
do
c=${line:${i}:1}
#判斷是否在指定字元之前
if [ "${c}" == "${before}" ]
then
break
fi
#是否為需要刪除的字元
if [ "${c}" != "${replace}" ]
then
str=${str}${c}
fi
let i++
done
# 保留指定字元後面的內容
suffix=${line:${i}}
echo ${str}${suffix}
done < ${file}
執行結果
---------------------
作者:dengjili
來源:CSDN
原文:https://blog.csdn.net/dengjili/article/details/78073585
版權宣告:本文為博主原創文章,轉載請附上博文連結!