我这样复制:
cp "$input_file_absolut_path" "$output_directory_absolut_path"
现在我想对复制的文件做些什么,但我只能这样做:
copy_absolut_path="$output_directory_absolut_path/$input_file_absolut_path"
获取复制文件的绝对路径的任何提示?
答案 0 :(得分:1)
不,你必须使用$input_file_absolut_path
。但由于您只复制了文件而不是整个目录结构到$output_directory_absolut_path
,所以你必须这样做:
copy_absolut_path="$output_directory_absolut_path/$(basename $input_file_absolut_path)"
basename
将为您提供没有目录结构的文件名。然后将它与output_directory_absolut_path连接起来。
答案 1 :(得分:0)
如果您的文件名不包含斜杠,则可以连接$output_directory_absolut_path
和basename "$input_file_absolut_path"
答案 2 :(得分:0)
copy_absolute_path="$(cd "$output_directory_absolute_path"; pwd)/${input_file_absolute_path##*/}"
如果output_directory_absolute_path
以/
结尾,则$(cd "$output_directory_absolute_path"; pwd)
将返回不带尾随/
的路径。
$(input_file_absolute_path##*/}
返回上一个/
之后的所有内容。