diff --git a/src/features/shell-sync/main/compute-unix-shell-environment.injectable.ts b/src/features/shell-sync/main/compute-unix-shell-environment.injectable.ts index e0f2b2aeb1..fa6de94b57 100644 --- a/src/features/shell-sync/main/compute-unix-shell-environment.injectable.ts +++ b/src/features/shell-sync/main/compute-unix-shell-environment.injectable.ts @@ -84,6 +84,7 @@ const computeUnixShellEnvironmentInjectable = getInjectable({ } else if (!cshLikeShellName.test(shellName)) { // zsh (at least, maybe others) don't load RC files when in non-interactive mode, even when using -l (login) option shellArgs.push("-i"); + command = ` ${command}`; // This prevents the command from being added to the history } else { // Some shells don't support any other options when providing the -l (login) shell option } diff --git a/src/features/shell-sync/main/compute-unix-shell-environment.test.ts b/src/features/shell-sync/main/compute-unix-shell-environment.test.ts index 55766fbb8a..a540824286 100644 --- a/src/features/shell-sync/main/compute-unix-shell-environment.test.ts +++ b/src/features/shell-sync/main/compute-unix-shell-environment.test.ts @@ -218,7 +218,7 @@ describe("computeUnixShellEnvironment technical tests", () => { }); it("should send the command via stdin", () => { - expect(stdinValue).toBe(`'/some/process/exec/path' -p '"deadbeef" + JSON.stringify(process.env) + "deadbeef"'`); + expect(stdinValue).toBe(` '/some/process/exec/path' -p '"deadbeef" + JSON.stringify(process.env) + "deadbeef"'`); }); it("should close stdin", () => {