попробуйте с этим.
import java.io.File;
public class MakingDirectory {
public static void main(String[] args) {
String s="d:\\msreddy\\sample1";
File file=new File(s);
file.mkdirs();
}
}
для получения дополнительной информации см. this.
Если у вас Bash 4.4 или новее, вы можете (ab) использовать расширение параметра ${parameter@P}
, которое расширяет parameter
так, как если бы это была строка приглашения: [ 116]
$ A='/home/userA'
$ B='$A/my_file' # Single quotes to suppress expansion
$ echo "${B@P}"
/home/userA/my_file
$ A='/other/path'
$ echo "${B@P}"
/other/path/my_file
Однако, как указано в комментариях, гораздо проще и удобнее использовать функцию вместо:
$ appendfile() { printf '%s/%s\n' "$1" 'my_file'; }
$ A='/home/user'
$ B=$(appendfile "$A")
$ echo "$B"
/home/user/my_file
$ A='/other/path'
$ B=$(appendfile "$A")
$ echo "$B"
/other/path/my_file
Нет. Вместо этого используйте простую и надежную функцию:
b() {
echo "$a/my_file"
}
a="/home/userA"
echo "b outputs $(b)"
a="/foo/bar"
echo "b outputs $(b)"
Результат:
b outputs /home/userA/my_file
b outputs /foo/bar/my_file
Тем не менее, вот один уродливый способ борьбы с системой, дословно выполняя вашу цель:
# Trigger a re-assignment after every single command
trap 'b="$a/my_file"' DEBUG
a="/home/userA"
echo "b is $b"
a="/foo/bar"
echo "b is $b"
Результат:
b is /home/userA/my_file
b is /foo/bar/my_file