我正在编写一个shell脚本,在AIX上的KornShell(ksh)下运行.我想使用该mkdir命令创建一个目录.但目录可能已经存在,在这种情况下我不想做任何事情.因此,我想测试以查看该目录不存在,或者抑制在mkdir尝试创建现有目录时抛出的"File exists"错误.
有关如何最好地做到这一点的任何想法?
有没有办法mkdir -p在Python中获得类似于shell的功能.我正在寻找除系统调用之外的解决方案.我确信代码少于20行,我想知道是否有人写过它?
所以,如果我在我的主目录中并且我想将foo.c移动到〜/ bar/baz/foo.c,但那些目录不存在,是否有某种方法可以自动创建这些目录,以便你只需输入
mv foo.c ~/bar/baz/
Run Code Online (Sandbox Code Playgroud)
一切都会成功吗?看起来你可以将mv改为一个简单的bash脚本,它会检查这些目录是否存在,如果不存在则会调用mkdir然后调用mv,但我想我会检查是否有人有更好的想法.
我想将程序的输出信息放到一个文件夹中.如果给定文件夹不存在,则程序应该创建一个新文件夹,文件夹名称与程序中给出的一样.这可能吗?如果是,请告诉我如何.
假设我已经给出了文件夹路径,"C:\Program Files\alex"并且alex文件夹不存在则程序应该创建alex文件夹,并且应该将输出信息放在alex文件夹中.
如果我调用vim foo/bar/somefile但foo/bar尚未存在,Vim拒绝保存.
我知道我可以切换到一个shell或:!mkdir foo/bar从Vim 做,但我很懒惰:)有没有办法让Vim在保存缓冲区时自动执行此操作?
如何在Linux中创建一个目录并在单个命令中授予权限?
我必须创建大量具有完全权限的文件夹777.
mkdir path/foldername
chmod 777 path/foldername
Run Code Online (Sandbox Code Playgroud)
我不喜欢在两个命令中创建和授予权限.我可以用单一命令执行此操作吗?
为什么我不能做这样的事情?mkdir folder/subfolder/为了实现这一点,我必须这样做:
mkdir folder
cd folder
mkdir subfolder
Run Code Online (Sandbox Code Playgroud)
有没有更好的方法呢?
我试图从Go可执行文件创建一组嵌套目录,如'dir1/dir2/dir3'.我已成功使用此行创建单个目录:
os.Mkdir("." + string(filepath.Separator) + c.Args().First(),0777);
Run Code Online (Sandbox Code Playgroud)
但是,我不知道如何在该目录内创建预定的嵌套目录集.
可能重复:
如何在ruby中递归创建目录?
在Ruby中,我该怎么做:
mkdir -p cool/beans
Run Code Online (Sandbox Code Playgroud)
这是我想出的:
Dir.mkdir('cool') unless File.directory?('cool')
cool_beans_path = File.join('cool', 'beans')
Dir.mkdir(cool_beans_path) unless File.directory?(cool_beans_path)
Run Code Online (Sandbox Code Playgroud)
但是,有没有更好的方法?
我知道我能做到:
system('mkdir', '-p', File.join('cool', 'beans'))
Run Code Online (Sandbox Code Playgroud)
但是,这不是平台独立的,是吗?比如,它适用于Mac但不适用于Windows,对吧?
在阅读具有该名称的Unix系统调用的mkdir(2)手册页后,看来该调用不会在路径中创建中间目录,只会在路径中创建最后一个目录.是否有任何方法(或其他功能)来创建路径中的所有目录,而无需手动解析我的目录字符串并单独创建每个目录?