Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/15.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
String 将路径转换为字符串bash_String_Bash_Path - Fatal编程技术网

String 将路径转换为字符串bash

String 将路径转换为字符串bash,string,bash,path,String,Bash,Path,我想将多个文件路径作为一个字符串放入bash脚本中,以便将该字符串传递给另一个程序。 当我连接这些文件路径时,我得到一个错误:没有这样的文件或目录。Bash必须将此文件路径作为字符串而不是文件处理 我用这种方式连接: all="" for path in $dir/*; do filePath="$path/file.txt" $all="$all I=$filePath" done echo $all 如何获得此输出 I=first/file.txt I=second/fi

我想将多个文件路径作为一个字符串放入bash脚本中,以便将该字符串传递给另一个程序。 当我连接这些文件路径时,我得到一个错误:没有这样的文件或目录。Bash必须将此文件路径作为字符串而不是文件处理

我用这种方式连接:

all=""
for path in $dir/*; do
    filePath="$path/file.txt"
    $all="$all I=$filePath"
done

echo $all
如何获得此输出

I=first/file.txt I=second/file.txt etc.

只是语法错误:

all=""
for path in $dir/*; do
    filePath="$dir/file.txt"
    all="$all I=$filePath"    #without $
done
echo $all

也许你想使用路径?不要在作业中使用$作为前缀

all=""
for path in $dir/*; do
    filePath="$path/file.txt"
    all="$all I=$filePath"
done
echo $all

all=“$all I=$filePath”您尝试过没有初始$吗?代码中有错误:您根本没有使用循环变量
path
…在简化此脚本时犯了一个小错误;)问题是Velthune提到的…你们最好使用数组!这就是问题所在。。。为什么bash不给shell一个语法错误,而不是说它不是file或dir-_-