Slo*_*vic 13 command-line mkdir
当我跑
mkdir ../../bin/Release_Linux/Resources
Run Code Online (Sandbox Code Playgroud)
我收到一个错误
$ mkdir ../../bin/Release_Linux/Resources
mkdir: cannot create directory ‘../../bin/Release_Linux/Resources’: No such file or directory
Run Code Online (Sandbox Code Playgroud)
要不就
mkdir Release_Linux/Resources
mkdir: cannot create directory ‘Release_Linux/Resources’: No such file or directory
Run Code Online (Sandbox Code Playgroud)
sud*_*dus 31
路径中的父目录可能不存在。
你可以试试
mkdir -p /path-to-directory/directory-name
Run Code Online (Sandbox Code Playgroud)
看 man mkdir
-p, --parents
no error if existing, make parent directories as needed
Run Code Online (Sandbox Code Playgroud)
如果出现permission denied错误,则您无权在指定路径中创建目录。
检查是否可以通过修改组成员身份或所有权来解决问题,以便获得涉及的整个目录路径所需的权限。
否则你需要提升权限,所以尝试 sudo
sudo mkdir -p /path-to-directory/directory-name
Run Code Online (Sandbox Code Playgroud)
sudodus 的回答恰当地解决了如何沿给定路径创建所有目录。另一种方法是通过 Python。如果您正在使用 Python 为 Ubuntu 开发软件并需要此类功能,这将特别有用。mkdir作为外部命令调用会增加额外进程的开销和额外的分叉,这会浪费资源。幸运的是 Python 的标准库,特别是os模块具有makedirs()功能:
$ python3 -c 'import os,sys;os.makedirs(sys.argv[1])' test_1/test2/test_3
$ tree test_1
test_1
??? test2
??? test_3
2 directories, 0 files
Run Code Online (Sandbox Code Playgroud)
请注意,这种行为也可以在Perl 中实现,Perl是 Ubuntu 默认附带的另一种脚本语言。
| 归档时间: |
|
| 查看次数: |
78672 次 |
| 最近记录: |