[ https://issues.apache.org/jira/browse/KAFKA-1508?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15028722#comment-15028722 ]
Boris Charpiot commented on KAFKA-1508: --------------------------------------- Same problem occurs with the Windows batch files... For example, bin/windows.kafka-run-class.bat should look like this: set BASE_DIR={color:green}"%CD%"{color} ... rem Classpath addition for kafka-core dependencies for %%i in (%BASE_DIR%\core\build\dependant-libs-%SCALA_VERSION%\*.jar) do ( call :concat {color:green}"%%i"{color} ) ... :concat IF -\["%CLASSPATH%"\] EQU \[""\]-{color:green}not defined CLASSPATH{color} ( set CLASSPATH=-"%%i"-{color:green}%~1{color} ) ELSE ( set CLASSPATH=%CLASSPATH%;-"%%i"-{color:green}%~1{color} ) > Scripts Break When Path Has Spaces > ---------------------------------- > > Key: KAFKA-1508 > URL: https://issues.apache.org/jira/browse/KAFKA-1508 > Project: Kafka > Issue Type: Bug > Components: tools > Affects Versions: 0.8.1.1 > Environment: Any *nix flavor where the full path name to the Kafka > deployment contains spaces > Reporter: Tim Olson > Assignee: Rekha Joshi > Priority: Minor > > All the shell scripts in {{bin}} use the idom > {{$(dirname $0)}} > but this produces the error > {{usage: dirname path}} > if the path contains spaces. The correct way to get the dirname is to use: > {{"$(dirname "$0")"}} > and subsequently wrap the result in quotes when it is used. For example, the > file {{bin/kafka-run-class.sh}} should look like this starting line 23: > {code} > # BUGFIX: quotes added > base_dir="$(dirname "$0")/.." > # create logs directory > # BUGFIX: quotes added > LOG_DIR="$base_dir/logs" > if [ ! -d "$LOG_DIR" ]; then > # BUGFIX: quotes added around $LOG_DIR > mkdir "$LOG_DIR" > fi > # ... > # BUGFIX: quotes added > for file in "$base_dir/core/build/dependant-libs-${SCALA_VERSION}/*.jar"; > do > CLASSPATH=$CLASSPATH:"$file" > done > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)