我试图制作一个脚本,该脚本将创建一百个名为 log-01、log-02、log-03 等的文件,每个文件中都包含“1”,没有任何循环,但它总是给出错误“不明确的重定向”
#!bin/bash
echo "1">log-{01..100}
Run Code Online (Sandbox Code Playgroud)
我尝试在 log-{01..100} 之前添加 $ 或将其放在引号中,但没有任何帮助。
输出只能重定向到单个文件,而不能重定向到多个文件。
\n如果您想要多个输出文件,可以使用tee:
#!/bin/bash\necho \'1\' | tee log-{01..99} log-100\nRun Code Online (Sandbox Code Playgroud)\n这将创建名为 log-01、log-02、\xe2\x80\xa6、log-98、log-99 和 log-100 的文件。
\n请注意,上述内容仅适用于从版本 4.0 开始的 bash。\n如果您的 bash 较旧并且不支持使用前导零格式化大括号扩展,则可以使用普通的旧 shell 进行命令替换:
\n#!/bin/sh\necho \'1\' | tee $(printf \'log-%02d \' $(seq 100))\n# or formatting with GNU sed directly:\necho \'1\' | tee $(seq -f \'log-%02g\' 100)\nRun Code Online (Sandbox Code Playgroud)\n这是少数不能进行扩展的用例之一,因此可以在扩展后进行字段分割。
\n| 归档时间: |
|
| 查看次数: |
335 次 |
| 最近记录: |