Shell (bash) brace expansion with Java's runtime.exec

前端 未结 1 1577
轮回少年
轮回少年 2021-01-22 23:33

I\'m trying to get an expansion command to work with runtime.exec, but the braces are being interpreted as literals rather than being expanded. Here\'s what I\'m trying to do:

相关标签:
1条回答
  • 2021-01-22 23:57

    You're trying to use Bash wildcards. They are interpreted within the Bash shell. You are running mkdir directly, so there is no shell to interpret {}. You need to specify path to the shell

    String command = "mkdir -p Foldername{1,2,3}/InnerFolder";
    Runtime.getRuntime().exec( new String[] { "/bin/bash", "-c", command } );
    

    Source.

    0 讨论(0)
提交回复
热议问题