Shell 创建文件并写入内容
选型总结 场景 推荐方式 单行字符串 printf '%s\n' "..." > file 多行内容 cat > file << 'EOF' ... EOF 追加内容 >> file 需要 root 写入 echo "..." | sudo tee file 脚本内变量展开 heredoc 不加引号:<< EOF 禁止变量展开 heredoc 加单引号:<< 'EOF' 单行字符串:推荐 printf printf '%s\n' 'Hello, World!' > foo.txt printf 简介 printf 在 Linux/Unix 系统上普遍可用,有两种形式: 内建命令(built-in):bash、zsh、dash 等 shell 均内置,不依赖外部程序 外部命令:/usr/bin/printf,由 coreutils 包提供,几乎所有发行版默认安装 printf 的作用是格式化输出,语法来自 C 语言的 printf(): printf FORMAT [ARGUMENTS...] 常用格式占位符: 占位符 含义 %s 字符串 %d 整数 %f 浮点数 \n 换行 \t Tab echo 在 bash 里需要加 -e 才能解析 \n,而 sh/dash 的 echo 行为又不同,跨 shell 不可靠;printf 行为在所有 shell 里一致,脚本中优先使用 printf。 ...