• shell脚本将执行结果重定向到指定路径指定文件对应的变量


    # cat a.sh
    #!/bin/bash
    
    dir = /home/
    
    file = a.txt
    
    ps -ef > ${dir}/${file}
       执行报错# /bin/bash a.sh
    dir: cannot access =: No such file or directory
    /home/:
    magx  songpy  test
    =:     cannot open (No such file or directory)
    a.txt: cannot open (No such file or directory)

    问题在于你在定义变量时使用了空格,导致变量名被解析成了dir file ,并非dirfile。在Shell中,变量名不能包含空格。

    正确的写法如下:

    1. #!/bin/bash
    2. dir=/home
    3. file=a.txt
    4. ps -ef > "${dir}/${file}"

    请注意:

    1. 变量名和等号之间不能有空格;
    2. 变量值如果包含空格等特殊字符,最好使用双引号括起来,以避免出现意外情况。

    生成的文件名称带日期(精确到秒)

    可以使用date命令获取当前日期,并结合重定向符号>将命令输出的内容重定向到一个以日期命名的文件中。示例代码如下:

    1. #!/bin/bash
    2. # 获取当前日期
    3. now=$(date +"%Y-%m-%d")
    4. # 重定向输出到文件中
    5. echo "Hello World!" > "$now.txt"

    执行脚本后,会在当前目录下生成以当前日期命名的文件,例如2021-10-28.txt,其中包含了Hello World!这行文本。如果需要在文件名中加上时间戳,可以使用+%H%M%S来获取当前时间的小时、分钟、秒数。完整代码如下:

    1. #!/bin/bash
    2. # 获取当前日期和时间
    3. now=$(date +"%Y-%m-%d_%H%M%S")
    4. # 重定向输出到文件中
    5. echo "Hello World!" > "$now.txt"

    执行脚本后,会在当前目录下生成以当前日期和时间命名的文件,例如2021-10-28_163410.txt,其中包含了Hello World!这行文本。

    可以使用date命令获取当前日期,并结合重定向符号>将命令输出的内容重定向到一个以日期命名的文件中。示例代码如下:

    1. #!/bin/bash
    2. # 获取当前日期
    3. now=$(date +"%Y-%m-%d")
    4. # 重定向输出到文件中
    5. echo "Hello World!" > "$now.txt"

    执行脚本后,会在当前目录下生成以当前日期命名的文件,例如2021-10-28.txt,其中包含了Hello World!这行文本。如果需要在文件名中加上时间戳,可以使用+%H%M%S来获取当前时间的小时、分钟、秒数。完整代码如下:

    1. #!/bin/bash
    2. # 获取当前日期和时间
    3. now=$(date +"%Y-%m-%d_%H%M%S")
    4. # 重定向输出到文件中
    5. echo "Hello World!" > "$now.txt"

    执行脚本后,会在当前目录下生成以当前日期和时间命名的文件,例如2021-10-28_163410.txt,其中包含了Hello World!这行文本。

  • 相关阅读:
    蓝桥杯刷题3
    分类预测 | MATLAB实现基于SVM-Adaboost支持向量机结合AdaBoost多输入分类预测
    [面试爱问] https 的s是什么意思,有什么作用?
    SAP ABAP OData 服务如何支持 $orderby (排序)操作试读版
    『无为则无心』Python面向对象 — 46、类和对象
    IM聊天服务器
    基于Java毕业设计中小型饭馆餐饮管理系统源码+系统+mysql+lw文档+部署软件
    Java EE改名Jakarta EE,jakarta对程序开发的影响
    小程序的数据驱动和vue的双向绑定有何异同?
    Nginx:配置文件的位置及组织简述
  • 原文地址:https://blog.csdn.net/songpeiying/article/details/134292120