MST

星途 面试题库

面试题:Bash脚本中的函数与文件操作

编写一个Bash脚本,定义一个函数,该函数接受一个目录路径作为参数,在该目录下创建10个以日期(格式为YYYYMMDDHHMMSS)命名的空文件,然后将这些文件名输出到同目录下的一个名为file_list.txt的文件中。请处理可能出现的目录不存在等错误情况,并在脚本中加入必要的注释解释关键步骤。
28.1万 热度难度
编程语言Bash

知识考点

AI 面试

面试题答案

一键面试
#!/bin/bash

# 定义函数,函数名为create_files
create_files() {
    # 检查传入的参数个数是否为1
    if [ $# -ne 1 ]; then
        echo "Usage: $0 <directory_path>"
        return 1
    fi

    # 保存传入的目录路径到变量dir
    dir=$1

    # 检查目录是否存在
    if [ ! -d "$dir" ]; then
        echo "Directory $dir does not exist."
        return 1
    fi

    # 进入指定目录
    cd "$dir" || {
        echo "Failed to enter directory $dir."
        return 1
    }

    # 循环创建10个以日期命名的空文件
    for ((i = 0; i < 10; i++)); do
        file_name=$(date +%Y%m%d%H%M%S)
        touch "$file_name"
    done

    # 将文件名输出到file_list.txt文件中
    ls -1 > file_list.txt
}

# 调用函数,传入目录路径作为参数
create_files "$1"