在文件的标题中创建一个新文件和Cats

时间:2017-09-10 05:45:19

标签: bash scripting

我正在尝试创建一个bash脚本,它接受文件名的用户输入并添加一个标记,.cpp; .hpp;或.app到文件的末尾。此外,创建的新文件将自动从名为header.txt

的单独文件向文件中添加标头

我到目前为止的一些Sudo Code是:

询问用户文件名

echo filename

询问哪个标签

1表示.cpp

2表示.hpp

3 for .app

Cats header.txt到filename.ext

cat filename.ext> header.txt

#!/bin/bash                                                                     
echo "Enter the file name"
read filename
echo "file tag: 1 for .cpp, 2 for .hpp, 3 for .app"
if [ "tag" = 1]; then
    filetag = .cpp
fi
if [ "tag" = 2];then
    filetag = .hpp

这只是第一部分。几天前开始学习Bash。可视化这部分是我在尝试使用用户输入文件名创建文件时感到困惑的。

1 个答案:

答案 0 :(得分:0)

你快到了!

要将header.txt的内容复制到新文件中,请执行

cat header.txt > "$filename"

最终代码如下所示。

#!/bin/bash                                                                     
echo "Enter the file name"
read filename

echo "file tag: 1 for .cpp, 2 for .hpp, 3 for .app"
read tag
case $tag in 
"1")
    extension=".cpp"
    ;;
"2")
    extension=".hpp"
    ;;
"3")
    extension=".app"
    ;;
*)
    echo "Invalid option"
    exit
esac

filename="$filename$extension"

cat header.txt > "$filename"