如何改进Shell脚本实现交互式为指定文件添加自定义内容?
交互式添加内容到指定文件的脚本方案
没问题,我帮你把原来的脚本改成交互式版本,这样每次运行都能自定义目标文件名和要添加的内容,完全符合你想要的交互效果~
直接用下面的bash脚本就可以实现:
#!/bin/bash # 提示输入目标文件名(支持多个文件,用空格分隔,也可以用通配符比如FILE*) read -p "enter file name : " target_files # 提示输入要添加的内容行 read -p "enter line to add : " new_line # 遍历每个目标文件,追加内容 for file in $target_files; do # 可选:检查文件是否存在,避免给不存在的文件创建空内容(不需要的话可以删掉这段if判断) if [ -f "$file" ]; then echo "$new_line" >> "$file" echo "✅ 已成功向 $file 添加内容" else echo "⚠️ 警告:文件 $file 不存在,已跳过" fi done
使用说明:
- 把上面的代码保存成一个文件,比如
add_line.sh - 给脚本添加执行权限:
chmod +x add_line.sh - 运行脚本:
./add_line.sh,之后就会按照你想要的提示输入文件名和内容啦
额外小提示:
- 输入文件名的时候,可以同时输入多个(用空格分开),比如
file01 file02 /apps/data/FILE*,脚本会自动处理每一个文件 - 如果不需要检查文件是否存在,直接删掉
if [ -f "$file" ]; then到else之间的判断,脚本会自动创建不存在的文件并追加内容
内容的提问来源于stack exchange,提问作者TenEM
相关产品推荐
相关产品推荐

