shell - 在 shell 脚本中使用 for 循环
问题描述
我编写了一个 shell 脚本来尝试运行gnuplot
.
运行脚本.sh
#!/bin/bash
echo "Script to generate the graph "
date
shopt -s extglob
rm -rf *.png
gnuplot /localtemp/$USER/video_project/build/../plot_graph/display_file0.gpl
gnuplot /localtemp/$USER/video_project/build/../plot_graph/display_file1.gpl
gnuplot /localtemp/$USER/video_project/build/../plot_graph/display_file2.gpl
gnuplot /localtemp/$USER/video_project/build/../plot_graph/display_file3.gpl
gnuplot /localtemp/$USER/video_project/build/../plot_graph/display_file4.gpl
gnuplot /localtemp/$USER/video_project/build/../plot_graph/display_file5.gpl
gnuplot /localtemp/$USER/video_project/build/../plot_graph/display_file6.gpl
gnuplot /localtemp/$USER/video_project/build/../plot_graph/display_file7.gpl
但是当我想从脚本中替换这个 gnu plot 语句并for loop
在脚本中使用它时,我得到了路径错误。
#!/bin/bash
echo "Script to generate the graph "
date
shopt -s extglob
rm -rf *.png
FILES=/path/to//localtemp/$USER/video_project/build/../plot_graph/*gpl
for f in $FILES
do
gnuplot $f
done
错误:"/path/to//localtemp/$USER/video_project/build/../plot_graph/*gpl", line 0: Cannot open script file '/path/to//localtemp/$USER/video_project/build/../plot_graph/*gpl'
注意:这些 *.gpl 文件存在于plot_graph
.
解决方案
我不确定那里/path/to
在做什么;这看起来更像是人们为通用示例编写的伪代码。您的问题已经有了使用的确切路径:
for f in /localtemp/$USER/video_project/build/../plot_graph/*.gpl; do
gnuplot "$f"
done
推荐阅读
- c++ - 如何访问存储在父类中的子类成员?
- c# - 用于匹配和替换子字符串的正则表达式
- android - 对 google play 商店保持星级和评论
- javascript - MongoDB _id 在前端返回 undefined (VueJS)
- java - 单击按钮时,如何以编程方式创建新的 TextView?
- php - PHP foreach 解码 json 时提供的参数无效
- javascript - 如何从网站元素中获取 url 并在另一个窗口中打开它
- python - 使用 os 库运行 python 脚本时权限被拒绝?
- mysql - 无法从函数返回
- pivot-table - 添加计算列