当我尝试这个简单的脚本时:
#!/bin/bash
#append csv
FILES= /home/stef/test/*
for f in $FILES do
cat $f >> ~/test.txt done
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
./append.sh: line 4: /home/stef/test/test2.txt: Permission denied.
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
更换
FILES= /home/stef/test/*
同
FILES=/home/stef/test/*
该脚本正在尝试评估/ home/stef/test/*的第一个匹配项.它说权限被拒绝,因为该文件不可执行.
./append.sh: line 4: /home/stef/test/test2.txt: Permission denied.
这是第4行.FOO= *在非空目录中尝试.
而且你的for ... do; done语法也是borked,done需要一个分隔符(;或换行符)," do" 也是如此.然而,这并不是产生这种错误信息的原因.