无法在shell脚本中使用变量名删除文件

时间:2016-12-12 15:14:56

标签: linux shell

我想删除名称存储在变量中的文件,但它不起作用。我正在

  

路径名中的文件或目录不存在

我的代码是

value=$(<try_text.txt)
rm -f /home/inform/output/$value

2 个答案:

答案 0 :(得分:1)

  

当我尝试删除时,我得到了:

bpf_
     

\ r来自哪里?

它来自于一个编辑器,该编辑器将Windows行写在cannot remove `/home/oracle/Omar2/B2BFiles/bm.txt\r': No such file or directory \r\n之间。读取该文件时,Linux Shell删除了以try_text.txt结尾的Unix行,并保留了\n。要摆脱它,请参阅e。 G。问题Line ending issue DOS > Linux > Java的答案。

答案 1 :(得分:-1)

试试这个:

value=try_text.txt
rm -f /home/inform/output/$value

当不需要时,不要在子shell中运行value变量。

修改

以前误解了这个问题,没有看到'&lt;'。

这适用于我的系统:

value=$(</home/user/Documents/try_text.txt)
rm -f /home/user/Documents/$value

正如@gile所说,请确保try_text.txt在您的工作目录中。