mv:无法将文件移动到'':bash

时间:2017-09-15 08:38:43

标签: bash shell

我有以下命令

mv 15827.png  "$(<15827.png.txt)"

将文件18827.png移动到15827.png.txt中指定的路径,它运行正常。

但是当我将此命令移动到shell脚本

#!/bin/bash
mv 15827.png  "$(<15827.png.txt)"

我正在运行它:

sh myscript.sh

它不起作用,我收到以下错误:

  

mv:无法将'15827.png'移动到'':没有这样的文件或目录

文件15827.png.txt包含数字7,当前目录中有名为7的文件夹。

1 个答案:

答案 0 :(得分:2)

问题是您使用sh运行脚本,但需要使用bash运行,因为$(<filename)bash扩展名。

使脚本可执行:

chmod 755 myscript.sh

然后运行:

./myscript.sh

这将使用#!行中命名的shell执行脚本。