在 ubuntu 命令行上使用每个文件作为参数重命名文件

在 ubuntu 命令行上使用每个文件作为参数重命名文件

我想将这些 html 文件重命名为以“购物车”开头,因为我没有意识到本课程中会有多个文件。因此chapter-2.html转到shopping-cart-chapter-2.html,等等,文件夹和style.css被忽略。

cchilders:~/tutorials/knockoutjs/knockout-for-students-book (master) 
$ ls
chapter-2-page-19.html  chapter-3.html      chapter-5.html      style.css
chapter-2.html      chapter-4.html      knockoutjs_succinctly

我需要将此文件夹中的每个文件作为数组而不是字符串获取,评估每个文件是否以结尾.html,然后将其重命名为

mv chapter-4.html shopping-cart-chapter-4.html 

通过使用文件名和“购物车”+文件名

对于需要编写的课程,这是一个常见的事情,我需要从命令行执行此操作,其中文件名很重要(成为标题),而我通常无法弄清楚如何在 bash 中执行此操作。命令行上的步骤是什么,例如正确的程序sed、、awkgrep?谢谢

答案1

尝试使用循环:

cd ~/tutorials/knockoutjs/knockout-for-students-book
for f in *.html; do
  mv "$f" "chopping-chart-$f"
done

相关内容