2016-09-22 108 views
-2

我是Linux中的新手。 我可以在終端上直接運行這個命令:(已保存)bash shell腳本參數「」

7za t -p' \' -w -y /root/test2.7z | grep -i OK 

我嘗試了7zip的文件密碼測試腳本(名爲test_script.sh):

7za t -p$1 -w -y /root/test2.7z | grep -i OK 

,但不能得到這個腳本的結果是:

sh /root/test_script.sh ' \' 

運行結果:

[[email protected] ~]# sh /root/test_script.sh ' \' 
7za t -p \ -w -y /root/test2.7z | grep -i OK 
ERROR: No more files 
\ 
System ERROR: 
Unknown error 18446744071562526744 

[[email protected] ~]# sh /root/test_script.sh " \" 
> 
> 
> 

終端掛起,也許等待下一個命令。

請幫助我如何傳遞參數「\」。

+2

'-p 「$ 1」'。當然你在研究中遇到了這個建議。 – rici

+0

另外,http://shellcheck.net是你的朋友,用於檢測這些錯誤... – anishsane

回答

0

感謝Rici。 該腳本工作。 7za t -p「$ 1」-w -y /root/test2.7z | grep的-i OK 運行 SH /root/test_script.sh '\'