From 2dabc02a3c72875dc0067f76b114059f19672d15 Mon Sep 17 00:00:00 2001 From: Christopher Schnick Date: Thu, 24 Nov 2022 06:21:41 +0100 Subject: [PATCH] Fix file writing shell command --- .../main/java/io/xpipe/core/store/MachineStore.java | 2 +- .../src/main/java/io/xpipe/core/store/ShellType.java | 2 +- .../main/java/io/xpipe/core/store/ShellTypes.java | 12 ++++++------ 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/core/src/main/java/io/xpipe/core/store/MachineStore.java b/core/src/main/java/io/xpipe/core/store/MachineStore.java index 073511c26..f96ca10d2 100644 --- a/core/src/main/java/io/xpipe/core/store/MachineStore.java +++ b/core/src/main/java/io/xpipe/core/store/MachineStore.java @@ -29,7 +29,7 @@ public interface MachineStore extends FileSystemStore, ShellStore { @Override public default OutputStream openOutput(String file) throws Exception { - return create().commandListFunction(proc -> proc.getShellType().createFileWriteCommand(proc.getOsType().normalizeFileName(file))) + return create().commandFunction(proc -> proc.getShellType().createFileWriteCommand(proc.getOsType().normalizeFileName(file))) .startExternalStdin(); } diff --git a/core/src/main/java/io/xpipe/core/store/ShellType.java b/core/src/main/java/io/xpipe/core/store/ShellType.java index 681cbd163..0aba7a788 100644 --- a/core/src/main/java/io/xpipe/core/store/ShellType.java +++ b/core/src/main/java/io/xpipe/core/store/ShellType.java @@ -43,7 +43,7 @@ public interface ShellType { List createFileReadCommand(String file); - List createFileWriteCommand(String file); + String createFileWriteCommand(String file); List createFileExistsCommand(String file); diff --git a/core/src/main/java/io/xpipe/core/store/ShellTypes.java b/core/src/main/java/io/xpipe/core/store/ShellTypes.java index 6d0dfad69..30cd569f2 100644 --- a/core/src/main/java/io/xpipe/core/store/ShellTypes.java +++ b/core/src/main/java/io/xpipe/core/store/ShellTypes.java @@ -117,8 +117,8 @@ public class ShellTypes { } @Override - public List createFileWriteCommand(String file) { - return List.of("findstr", "\"^\"", ">", file); + public String createFileWriteCommand(String file) { + return "findstr \"^\" > \"" + file + "\""; } @Override @@ -233,8 +233,8 @@ public class ShellTypes { } @Override - public List createFileWriteCommand(String file) { - return List.of("cmd", "/c", "findstr", "\"^\"", ">", file); + public String createFileWriteCommand(String file) { + return "cmd /c 'findstr \"^\" > \"" + file + "\"'"; } @Override @@ -351,8 +351,8 @@ public class ShellTypes { } @Override - public List createFileWriteCommand(String file) { - return List.of("cat", ">", file); + public String createFileWriteCommand(String file) { + return "cat > \"" + file + "\""; } @Override