[英]Cannot SCP a path with spaces from bash script?
我有一個bash腳本,該腳本生成一個SCP命令來執行。 代碼的相關部分如下所示:
echo $COPY_CMD
$COPY_CMD
我的輸出看起來像這樣:
rascher@localhost:~/Desktop/video_final$ ./xfervids.sh scp "/media/My Book/PhotosVideos/Videos/18May2008Download/SD_VIDEO/PRG001/MOV056.MOD" rascher@192.168.1.101:./video_working/ rascher@192.168.1.101's password: "/media/My: No such file or directory Book/PhotosVideos/Videos/18May2008Download/SD_VIDEO/PRG001/MOV056.MOD": No such file or directory
但是,當我選擇輸出的第2行: scp "/media/...
,將其復制並粘貼到終端中,即可正常工作。
我究竟做錯了什么? 我嘗試轉義“ My Book”( "My\\ Book"
)中的空格,而不是一個( "My\\\\ Book"
)放置兩個\\
字符,但是我無法使它始終如一地運行。 救命?
當路徑名中有空格時,您必須格外小心。
在上下文中,您可能需要:
eval $COPY_CMD
這次您不需要在變量周圍加上引號。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.