【发布时间】:2018-10-16 15:54:11
【问题描述】:
我正在尝试发送以下行:
trap 'test -n "$SSH_AUTH_SOCK" && eval `/usr/bin/ssh-agent -k`' 0
从 Windows 到 WSL 的文件。
这是我到目前为止所得到的:
bash -c "echo -e 'trap test -n \"\$SSH_AUTH_SOCK\" && eval \`/usr/bin/ssh-agent -k\` 0' >> $HOME/test"
我找不到引用陷阱参数的方法。提前感谢您的帮助。
【问题讨论】:
-
WSL 和 Windows 在同一台服务器上。你不能直接编辑文件或者至少删除
bash -c并直接调用echo吗? -
@WalterA 这就是我一开始所做的(使用 ifstream/c++),但是创建的文件搞砸了权限和所有者,chmod 似乎没有修复它。根据 Rich Turner it is not recommended to so
-
题外话,习惯:1.花括号,如
${SSH_AUTH_SOCK}。 2. 使用$(some_comand)调用子命令,避免转义或嵌套反引号的问题。 3.不要调用文件test,那是shell命令! -
我不明白 Rich 的所有评论,大多数问题似乎与符号链接有关。也许将文件发送到像
C:\transfer\mytrap.sh这样的固定路径会更好。也许也可以从 ifstream/c++ 中获得。
标签: bash windows-subsystem-for-linux quotation-marks