cha*_*118 24 linux command-line
假设我的当前目录是一个.我想创建一个目录乙和文件"myfile.txt的"内部乙.
如何在终端的一个命令中执行此操作?
编辑:
目录可以多次嵌套.就像我可能想要创建B/C/D然后在其中的"myfile.txt".我也不想重复目录部分.
以下命令将在任何级别创建目录.
mkdir -p B/C/D
Run Code Online (Sandbox Code Playgroud)
和
mkdir -p B/C/D && touch B/C/D/myfile.txt
Run Code Online (Sandbox Code Playgroud)
将创建目录和文件.但我不想在touch命令后重复目录部分.那可能吗?
dev*_*ull 32
mkdir B && touch B/myfile.txt
Run Code Online (Sandbox Code Playgroud)
或者,创建一个函数:
mkfile() { mkdir -p -- "$1" && touch -- "$1"/"$2" }
Run Code Online (Sandbox Code Playgroud)
用2个参数执行它:create to path和filename.他说:
mkfile B/C/D myfile.txt
Run Code Online (Sandbox Code Playgroud)
将myfile.txt在目录中创建该文件B/C/D.
为此,您可以创建自己的函数。例如:
$ echo 'mkfile() { mkdir -p "$(dirname "$1")" && touch "$1" ; }' >> ~/.bashrc
$ source ~/.bashrc
$ mkfile ./fldr1/fldr2/file.txt
Run Code Online (Sandbox Code Playgroud)
解释:
~/.bashrc使用echo命令将函数插入到文件末尾-p标志用于创建嵌套文件夹,例如fldr2~/.bashrc使用命令source更新文件mkfile函数创建文件