如何在bash脚本中连接字符串以在SQL语句中使用?

波诺

我想在bash脚本中执行以下操作:

  1. 从带有文件名的文件中读取一些文件名
  2. 设置变量输入路径
  3. 并列1.和2。
  4. 在sql语句中使用3。

这是我的代码:

 #!/bin/bash
 INPath="/home/bono/RD/BV-OUT/"

 while 
 read line
 do
 RD="$line"
 RDFile="$INPath$RD"

 echo -e $RDFile

 ###MYSQLs:
 mysql -u root -D RD --local-infile << EOF
   LOAD DATA LOCAL INFILE '$RDFile'
     INTO TABLE bv_tmp_all FIELDS TERMINATED BY ';' LINES TERMINATED BY '\r\n';
 EOF
 ##### EOSQL

 done < /home/bono/RD/BV-OUT/allto468

回显显示正确的路径和文件名,但是mysql总是说:

not found (Errcode: 2 - File or Directory not found)  

我尝试了不同的方法来连接两个字符串,但是没有一个:(

以下代码可用于mysql(无连接),但这不是我所需要的:

 #!/bin/bash

 while 
 read line
 do

 RDFile="/home/bono/RD/BV-OUT/468-R11"

 echo -e $RDFile

 ###MYSQLs:
 mysql -u root -D RD --local-infile << EOF
   LOAD DATA LOCAL INFILE '$RDFile'
     INTO TABLE bv_tmp_all FIELDS TERMINATED BY ';' LINES TERMINATED BY '\r\n';
 EOF
 ##### EOSQL

 done < /home/bono/RD/BV-OUT/allto468

串联有什么问题?

格伦·杰克曼

如果allto468本身具有\ r \ n行尾,则$ line看起来像468-R11\r,并且肯定找不到该文件。

解决方案

  1. dos2unix在allto468文件上运行以解决此问题,
  2. 更改done

    done < <(sed 's/\r$//' /home/bono/RD/BV-OUT/allto468)
    

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在Firebird sql语句中使用非ascii字符串文字?

如何在SQL WHERE IN语句中的R中使用字符串

在if语句中使用连接字符串

如何在 bash 脚本中连接字符串?

如何在 Bash 脚本中连接字符串变量

如何连接字符串和数字SAS宏并在where语句中使用

如何在SQL语句中连接两个字符串?

如何在 django 模板的 if 语句中使用 django 变量到 javascript 字符串变量中

如何在带有 int 的 if 语句中使用字符串?

如何在MySQL存储过程的IN语句中使用查询字符串

我们如何在声明语句中使用字符串变量?

如何在MySQL语句中使用.format()字符串?

如何在switch语句中使用字符串资源

如何在systemverilog案例语句中使用通配符字符串

关于如何在条件语句中使用 Python 添加字符串的问题

将字符串中的 \" 替换为 " 以在 SQL 语句中使用

如何在 SQL Server 连接语句的右选择语句中的 where 子句中使用左表中的列

如何从参数中获取字符串并在if语句中使用它?

如何在运行时更改微调器的字符串数组如何在if语句中使用微调器的选定项目(eclipse中的Android)

如何在bash脚本中连接列表中的字符串?

如何在shell脚本中使用通配符连接字符串和变量

如何在mongo-shell脚本的mongo连接字符串中使用sslAllowInvalidHostnames?

如何在bash case语句的字符串模式(空格分隔的单词)中使用“小丑”或通配符?

如何在bash脚本中连接变量和字符串

如何在报表语句中用整数连接字符串?

如何在SQL连接字符串的密码中使用分号字符?

如何在BigQuery中使用标准SQL在LEFT JOIN的ON子句中使用字符串函数?

如何在case语句中使用优先值或在函数中的sql语句中的case语句中设置变量

在Switch语句中使用字符串