![](/img/trans.png)
[英]Write a Bash script which will take a single command line argument (a directory) and will print each entry in that directory
[英]trying to write a script to run a command in a deep directory on entry to ssh
因此,我正在嘗試編寫一個腳本,該腳本將允許我運行命令來初始化一些事情。 更具體地說,假設我從主目錄開始,但是要運行此命令,我希望我必須位於主目錄深處的三個文件夾中。
我的腳本通常看起來像這樣。
#!/bin/sh
cd home/path/to/final/directory/
command
現在通常,當我進入該目錄時,我可以在命令行上運行命令,並且一切正常。
當我嘗試使用腳本來執行此操作時,命令行拋出錯誤,表明該命令無法識別,就像計算機不知道在哪里查找一樣。
我使用的臨時修復程序是指向所需目錄的符號鏈接,但我希望有人可以幫助我,這樣當我SSH到該節點時,該腳本可以立即運行,因此我不必進入深層目錄,運行命令並再次離開。
嘗試定義完整路徑,例如:
#!/bin/sh
cd $HOME/path/to/final/directory && /path/to/your/command
在這種情況下,它將嘗試cd
進入您定義的目錄,但是如果找不到目錄,它將不會運行該命令,這是因為&&
要在運行命令之前進行測試,可以執行ls
,例如:
cd $HOME/path/to/final/directory && ls
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.