簡體   English   中英

在UNIX遠程服務器中執行參數文件

[英]executing parameter file in a unix remote server

我正在嘗試使用ssh遠程運行腳本,並且需要使用來自遠程服務器的一些參數。 將所有參數保留在遠程服務器位置temp / test / test.prm文件中。 收到一條錯誤消息:“ invoke.sh:第20行:。/temp/test/test.prm:沒有這樣的文件或目錄”

請參閱下面的示例腳本。 在腳本方面有非常基礎的知識,所以請指導我

#!/bin/sh
Param1=$1
Param2=$2

ssh usr@Server1

          . ${Param1}/Client/scripts/Sample1.prm

 cd  $prmHome/$prmSetPath

 ls | sed '/\.log$/d' >  $prmHome/$prmScript/Filelist.txt

 cd $prmHome/$prmScript

 while read LINE

 do

 ExportFilName=$LINE

 ./conversion.sh $prmHome/tmp_export/convert_$Param2.csv  $prmHome/$prmSetPath/'$ExportFilName'

 done < Filelist.txt


rm -rf   $prmHome/$prmScript/Filelist.txt

exit 0



Content of  Sample1.prm
prmHome=/iis/home
prmSetPath=/export/set
PrmScript=/Client/scripts

我在使用ssh連接到遠程服務器后嘗試了相同的低谷命令行,但它仍在工作,但是當我嘗試通過腳本(invoke.sh)進行相同操作時,不會拋出此類文件或目錄錯誤

更新

這還不清楚,將無法正常工作!

ssh usr@Server1
          . ${Param1}/Client/scripts/Sample1.prm

如前所述,您應該使用

ssh usr@Server1 ". ${Param1}/Client/scripts/Sample1.prm" 

首先格式化。

其次,您期望以下命令做什么?

. ${Param1}/Client/scripts/Sample1.prm

注意,兩者之間有一個空格. 和路徑,這是source的同義詞。 因此,還要檢查Sample1.prm是否具有有效命令。


看起來您不在遠程主機上運行任何ssh shell命令,而僅在本地主機上運行。

您如何精確地運行ssh shell命令?

您的示例中的代碼片段格式不正確。 總體結構應如下所示:

  • ssh user1@server1 date

    要么

  • ssh user1@server1 'df -H'

請修改您的調用腳本,或適當設置問題中的格式。

更新:

如果要通過ssh在遠程服務器上執行代碼,可以執行以下操作:

  1. 為要遠程運行的代碼創建單獨的文件my_script.sh ,並粘貼以下代碼:

      #!/bin/bash function my_function() { prmHome=$1 prmSetPath=$2 PrmScript=$3 cd $prmHome/$prmSetPath ls | sed '/\\.log$/d' > $prmHome/$prmScript/Filelist.txt cd $prmHome/$prmScript while read LINE do ExportFilName=$LINE ./conversion.sh $prmHome/tmp_export/convert_$Param2.csv $prmHome/$prmSetPath/'$ExportFilName' done < Filelist.txt rm -rf $prmHome/$prmScript/Filelist.txt exit 0 } 
  2. 然后,可以通過在遠程服務器上獲取文件來調用遠程功能:

    ssh usr@Server1 '. my_script.sh; my_function "/iis/home" "/export/set" "/Client/scripts"'

而已 :)


此代碼將不起作用:

ssh usr@Server1

          . ${Param1}/Client/scripts/Sample1.prm

像這樣更改它:

ssh usr@Server1 ". ${Param1}/Client/scripts/Sample1.prm"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM