【【Shell】Shell去掉最后一个字符】起因:
shell脚本——将每行的文字自动插入到数据库中
File=$1
if [[ "$File" == "" ]];
then
echo "usage: $0 File"
exit -1
fiwhile read line
do
if [ -z "$line" ];
then
echo "is null"
elseecho ${line%?}
mysql $database -hIp -uUsername -pPassword -e "insert into tablename (ColumnName) values('${line}');
"
fi
done < ${File}
插入到数据库之中数据显示异常
原因是:
文本中每行行尾有一个换行符
shell中去掉最后一个字符
${line%?}
脚本修改为
mysql $database -hIp -uUsername -pPassword -e "insert into tablename (ColumnName) values('${line%?}');
"
删除错误数据,重新运行脚本即可
推荐阅读
- Linux|Shell 编程~人入门到入坑。
- Linux技术|Windows平台下ADB的安装与使用
- c#|C#中使用SHFileOperation调用Windows的复制文件对话框
- Shell|Linux下 svn命令操作
- ubuntu环境|ubuntu10.04 常用命令
- ubuntu环境|Linux SSH相关命令
- python|合并和排序 Linux 上的文件 | Linux 中国
- 脚本输入处理——选项处理
- Shell|Shell脚本学习总结
- Shell|Linux: grep命令多关键字的“与”和“或”