次のコマンドを使用して、リモートmacOSへのSSH接続を開始します。目標は、SSHログインを正常に実行し(mount.shスクリプトを介して)特定のネットワーク共有をマウントすることです。リモートのmacOSでmount.shスクリプトを保存して実行すると、正常に動作します。スクリプトはユーザー入力を受け取り、カスタムマウントポイントにインストールします。ただし、SSHを介してリモートシステムでローカルにscript-mount.shを実行しようとするたびに動作が停止します。
実際、sshログインはうまく機能しますが、script-mount.shは実行されません。
#!/bin/bash
read -p "Enter Username: " username
ssh $username@<Server IP> "$(< mount.sh)"
コードを改善するためのすべての提案/提案を歓迎します:)。
mount.shスクリプトコード:
#!/bin/bash
read -p "Enter the name of share mount :" lpmount
echo ""
read -p "Enter your User name: " username
echo ""
read -p "Enter the year (e.g. 2018,2019) :" year
mkdir /Gross/$lpmount
mount_smbfs //$username@<Server-IP>/Evi/$year /Gross/$lpmount
mount_status=$? # Checks if the mounting was successfull.
if [ $mount_status -eq 0 ]
then
echo ""
echo "Share mounted SUCCESSFULLY! at /Gross/$lpmount"
sleep 3
else
echo ""
echo " Share not mounted SUCCESSFULLY! at/Gross/$lpmount"
fi
答え1
説明する:
bash -s
スクリプトを処理するオプションを追加できます。下記の修正をご覧ください。
改訂する:
#!/bin/bash
read -p "Enter Username: " username
ssh $username@<Server IP> 'bash -s' < mount.sh