プログラムでsshを使用してリモートディレクトリを作成する


11

シェルスクリプトを使用して、sshを使用してserverA-> serverBからリモートでディレクトリを作成するにはどうすればよいですか?create directoryコマンドをsshコマンドと一緒に渡すことはできますか?どうやって?

ディレクトリがまだ存在しない場合は、基本的に日付に基づいてリモートでディレクトリを作成しようとしています(例:20110304)。

回答:


12
ssh remote-host-ip '. ~/your_profile; mkdir your_directory'

「日付」によって正確に何を意味するのかわからないが、以下のようにmkdirの前にテストできます

ssh remote-host-ip '. ~/your_profile; test -d your_directory || mkdir your_directory'

あなたが言うようにディレクトリ名が必要な場合は、試してください

ssh remote-host-ip '. ~/your_profile; test -d your_parent_directory/$(date +%Y%M%d) || mkdir your_parent_directory/$(date +%Y%M%d)'

ハイライト表示、コードをオンにするために、あなたのコードとCtrlキーを押しながらKを選択するか、必要に応じてバッククォートでそれらを囲む``インライン強調表示したい場合はlikeそう
SiegeX

7

あなたはこのようにそれを達成することができます:

  ssh you@serverB "mkdir /path/to/dir"

またはserverA ....にスクリプトがある場合

  ssh you@serverB 'bash -s' < local_script.sh

ご使用の環境を読み込むためにはbashが必要な場合にも、あなたが使用することができますbash --login

0

プログラムで日付を生成する場合は、以下をご覧くださいdate +format

jinx:774 Z$ date +%m%d%H%M
03041904

0

ssh user@server mkdir path/$(date +%Y%m%d)

これを機能させるには、サーバー間でパスワードなしの認証を設定する必要があります。 これを行う手順は次のとおりです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.