mkdir -pv不详细

时间:2015-02-04 19:03:59

标签: macos bash mkdir

如果我运行mkdir -pv-p有效,但我没有得到详细的输出;但是,如果我只运行mkdir -v,则详细输出将按预期显示。也可能值得注意的是,-v的长形似乎根本不起作用。

从我的测试: mkdir -p a/b/c:创建a/a/b/a/b/c/,不向终端提供输出(按预期方式)

mkdir -v d:创建d/并输出mkdir: created directory 'd'(按预期方式)

mkdir -pv e/f/g:创建e/e/f/e/f/g/,不向终端提供输出(为什么?)

mkdir --verbose h:出现illegal option -- -错误(为什么?)


更新:我已就此问题向Apple提交了错误报告,并收到以下回复:

enter image description here

他们回答“-v不适用”对我来说没有多大意义,因为mkdir -v工作正常,但由于有各种变通方法,我甚至不再使用OSX,我不这样做认为值得继续追求我。

2 个答案:

答案 0 :(得分:8)

Macs使用基于BSD的代码(大部分)符合POSIX标准,但(大多数情况下)没有GNU扩展(例如双短划分选项)。手册页确实记录了-v-p-p可以正常工作,但确实可以抑制-v选项(可能是最有用的选项)。

您的一个选择是向Darwin或BSD团队或Apple提交错误。它就是这样儿的;可以说它不是应该的样子。 (GNU mkdir支持-v并打印与-p一起使用时创建的目录,这更有意义,并且支持“这是一个bug”争用。)

感谢SnoringFrog

另一种选择是在OSX上安装和使用GNU mkdir命令。它是GNU coreutils的一部分,您可以按照How to replace Mac OS X utilities with GNU core utilities Ask Different中的说明安装它。然后,您可以将mkdir别名指向gmkdir以获得预期的行为(假设您在安装GNU工具时不使用--default-names)。

答案 1 :(得分:0)

如果日志记录很重要,您也可以执行此操作(因为在简单情况下-v标志有效):

mkdir -v path ; 
mkdir -v path/to ; 
mkdir -v path/to/destination ; 

思考不同再思考?!