Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
mysql加载数据文件可以';无法访问unix shell变量_Mysql_Sql_Mariadb - Fatal编程技术网

mysql加载数据文件可以';无法访问unix shell变量

mysql加载数据文件可以';无法访问unix shell变量,mysql,sql,mariadb,Mysql,Sql,Mariadb,我正在使用MYSQL加载数据实用程序加载数据。为了简单起见,我将整个命令移到了一个控制文件中。输入文件的路径,我保存在一个名为C_path的SHELL变量中,并在UNIX中导出。但是MySQL无法访问该文件的路径,因为它无法解释环境变量值 下面是Ctrl文件的命令和内容 mysql-uuser-ppwd-hhost_name schema_name-e“$(cat/home/jboss/maria_test_YYYYMMDD/IXQDWFIS.ctl)” /home/jboss/maria_te

我正在使用MYSQL加载数据实用程序加载数据。为了简单起见,我将整个命令移到了一个控制文件中。输入文件的路径,我保存在一个名为C_path的SHELL变量中,并在UNIX中导出。但是MySQL无法访问该文件的路径,因为它无法解释环境变量值

下面是Ctrl文件的命令和内容

mysql-uuser-ppwd-hhost_name schema_name-e“$(cat/home/jboss/maria_test_YYYYMMDD/IXQDWFIS.ctl)”

/home/jboss/maria_test\u YYYYMMDD/hello.ctl)
内容如下:


错误: 第1行错误2(HY000):文件“$C_PATH/hello.uld”


您必须运行代码,而不是打印代码:

mysql -uuser -ppwd -hhost_name schema_name \
   -e "$(echo `cat /home/jboss/maria_test_YYYYMMDD/IXQDWFIS.ctl`)

也不在上面工作。试过一次以下,效果很好。谢谢你的意见

mysql -uuser -ppwd -hhost_name schema_name -e "$( echo $(</home/jboss/maria_test_YYYYMMDD/IXQDWFIS.ctl) | sed "s|\$C_PATH|$C_PATH|" )"

mysql-uuser-ppwd-hhost\u name schema\u name-e“$(echo$(使用双引号。使用单引号,$符号只是美元符号,而不是变量prefix@Tamar,我尝试了你的建议,低于错误“错误1064(42000)在第1行:您的SQL语法有错误;请检查与您的MariaDB服务器版本相对应的手册,以了解在第2行的表格EMP字符集UTF8字段te中使用“$C_PATH/hello.uld”附近的正确语法“如果要对文件内容进行cat,则必须运行它。双引号修复程序不起作用,因为它导致了嵌套的双引号。hi@Tamar,在上面也不起作用。在下面尝试过,效果很好。感谢您的输入。mysql-uuser-ppwd-hhost_name schema_name-e”$(echo$(
mysql -uuser -ppwd -hhost_name schema_name -e "$( echo $(</home/jboss/maria_test_YYYYMMDD/IXQDWFIS.ctl) | sed "s|\$C_PATH|$C_PATH|" )"