小编Mat*_*att的帖子

以递归方式将文件路径添加到文件的脚本

我是一名评分员,提交给我的文件最终位于以学生姓名命名的文件夹中,该文件夹本身位于我的 linux 共享上的特定文件夹中。

目前我浏览每个源文件并在每个文件的顶部手动添加注释,以便在打印它们时我可以知道哪些文件属于哪些学生。

我想要做的是递归地浏览作业文件夹,当我下拉到每个学生文件夹时,使用学生目录名称在该文件夹中的每个文件的顶部添加一条评论,以了解要添加到评论中的内容。

似乎与在文件顶部添加评论类似,但我不确定如何在放入每个学生文件夹时动态创建评论。

最近更新

仍然无法正常工作,但这是我所做的更改,因此您不必寻找它们。

我做了一些改变:

  • printf 语句中的单引号现在是双引号,因为'inisn't提前终止了它。
  • 更改-writable-perm 664可写会引发错误,并且我尝试更改的所有文件在上传时都设置为 644。如果您知道比这更好的方法,请告诉我。
  • 如果我正确理解 exec 现在 $1 是未声明的(echo $1在 exec 参数中添加确认了这一点),所以我在 exec 参数的末尾添加_filepath={}并删除了{}
  • 初始化_dirname_filepath
  • 在使用正则表达式隔离目录名称的两行中,双引号没有关闭。现在 _dirname 成功地保存了之后的目录名称
  • 现在调用 ed _filepath

我很确定它不起作用的原因是因为调用 ed 的行中的单引号关闭了 exec 参数。

当前代码:

student_head_action() {
   # We can't use parameter expansion on $PWD because of recursion
   local _dirname="${1%/*}"
   _dirname="${_dirname##*/}"

   [[ -d $1 ]] && return 0
   if ! …
Run Code Online (Sandbox Code Playgroud)

bash text-processing filenames

2
推荐指数
1
解决办法
699
查看次数

标签 统计

bash ×1

filenames ×1

text-processing ×1