使用-p(--parents)选项,mkdir根据需要创建父目录.
touch, vim或者>可以在bash中创建新文件,但仅限于父目录存在时.
如何在一个命令中创建新文件及其父目录?就像什么-p做的mkdir
lin*_*uts 17
安装是你的朋友:
install -Dv /dev/null some/new/path/base-filename
Run Code Online (Sandbox Code Playgroud)
mkl*_*nt0 13
这是一个shell 函数:
mkfileP() { mkdir -p "$(dirname "$1")" || return; touch "$1"; }
# Sample call
mkfileP "./newSubDir/test.txt" && echo 'created or touched' || echo 'failure'
Run Code Online (Sandbox Code Playgroud)
例如,您可以将其放在shell配置文件中.
或者,将其实现为脚本(根据需要添加错误处理和命令行帮助):
#!/usr/bin/env bash
mkdir -p "$(dirname "$1")" || exit
touch "$1"
Run Code Online (Sandbox Code Playgroud)