bash 中的转义字符
Escaping characters in bash
- 我使用 thunar 作为文件管理器
- 我想对某些文件使用“自定义操作”(Thunar --> 编辑 --> 配置自定义操作...)
- 我使用的命令是:
xfce4-terminal -e "md5sum '%F'" --hold
这工作正常,除非文件路径或文件名包含 space。它不会按预期工作,因为无法找到该文件。
我认为这是因为文件路径中的space没有自动转义
如何解决这个问题?
提前谢谢你
您可以通过在字符前面放置 \
轻松转义字符。
似乎 Thunar 将 %F
替换为(可能 多个 )正确引用的路径。把这个放在引号内会破坏已经完美的引号。来自 https://docs.xfce.org/xfce/thunar/custom-actions
Never quote field codes
您需要一种方法将参数 list 传递给 xfce4-terminal
中的命令 运行。幸运的是 man xfce4-terminal
列出:
-x, --execute
Execute the remainder of the command line inside the terminal
因此,尝试
xfce4-terminal --hold -x md5sum %F
- 我使用 thunar 作为文件管理器
- 我想对某些文件使用“自定义操作”(Thunar --> 编辑 --> 配置自定义操作...)
- 我使用的命令是:
xfce4-terminal -e "md5sum '%F'" --hold
这工作正常,除非文件路径或文件名包含 space。它不会按预期工作,因为无法找到该文件。
我认为这是因为文件路径中的space没有自动转义
如何解决这个问题? 提前谢谢你
您可以通过在字符前面放置 \
轻松转义字符。
似乎 Thunar 将 %F
替换为(可能 多个 )正确引用的路径。把这个放在引号内会破坏已经完美的引号。来自 https://docs.xfce.org/xfce/thunar/custom-actions
Never quote field codes
您需要一种方法将参数 list 传递给 xfce4-terminal
中的命令 运行。幸运的是 man xfce4-terminal
列出:
-x, --execute
Execute the remainder of the command line inside the terminal
因此,尝试
xfce4-terminal --hold -x md5sum %F