クローゼの色々備忘録

仕事や私生活で学んだこと、ゲームの感想などを記録。お役に立てれば幸いです。

パソコン(Windows10)で iCloudを使って写真を共有するには(続き)

前回、パソコンにiCloudが使えるよう設定したけど結局パソコンから共有アルバム作れなかったので(すぐに反映されない?)諦めて別の方法にチャレンジ。

パソコンからスマホに共有してみる

  • 隠れているインジケーターからiCloudのアイコンを右クリックすると次の画面に

f:id:yiris1127:20170816002638p:plain

  • iCloud.comで表示」をクリック→ブラウザが開く
  • 雲マークをクリックして写真をアップロードする

f:id:yiris1127:20170816001515p:plain

  • アップロードされるのを待つ

f:id:yiris1127:20170816001621p:plain

  • アップロードが完了したら、スマホの写真アプリを開き、「アルバム(すべての写真)」を開く(実際は自分が写真をアップロードした場所を開きましょう)


おおー!こちらはすぐに写真がアップロードされてました。
なるほど、やはり今の時点ではパソコンからスマホに共有し、スマホから共有アルバムを作成するほうが良さそう。二度手間ではあるけど、作業が進まないよりは良いかな。

今後はパソコンから共有がスムーズにできるようになればいいな。

パソコン(Windows10)で iCloudを使って写真を共有するには

背景

iPhone5Sで撮ってた写真が古いパソコンにどっさり残ってた。
家族旅行の写真がほとんどだったので、このままパソコンと一緒に廃棄するのはもったいないし、
かといって新しいパソコンに移したところで陽の目を浴びないままも寂しい。

できれば家族にも見せたい。
そこで、iPhoneの写真アプリの「共有」機能がパソコンでも使えないかと調べてみた。

設定手順

以下の手順の「WindowsiCloud の設定」を参考にぽちぽちと設定。
support.apple.com

設定時のメモ

  • インストールは何事もなく終了
  • インストール後は再起動が必要だったので再起動
  • 再起動すると、Apple IDでサインインを求められるので、使っているiPhoneと同じIDとパスワードでサインイン

f:id:yiris1127:20170814131749p:plain

  • サインインできたら、共有したいものだけチェックをいれて「適用」をクリック

設定はこれだけだった。さて、ちゃんと写真が登録できるのだろうか・・

使ってみたがうまくいかず

  • iCloudフォトライブラリ」を使って、と説明にはあるけどどこ?ってなった

どうやら、[コンピューター]というところに「iCloud フォト」というアイコンが作られてる様子
f:id:yiris1127:20170814132436p:plain

  • iCloudフォトをクリックすると次の画面に

f:id:yiris1127:20170814132552p:plain

  • でも「共有」を押してもスマホで作成しているフォルダが何一つ表示されてなかった
  • おまけにパソコンから新しいフォルダさえ作れない


うーん、何の設定が悪いの?

試行錯誤

  • 隠れているインジケーターからiCloudのアイコンを右クリックして、「iCloud.com に移動」を押してみる

f:id:yiris1127:20170814134026p:plain

  • 「写真」をクリックすると、スマホの写真の中身が見れた!
  • なるほど、パソコンとスマホ間で写真共有するには便利だけど、ちょっと違うんだよな
  • とかやっているうちに、さっき表示されてなかった共有フォルダがいっぱい表示されてた!
  • フォルダだけ表示されてたり、写真もちゃんと入ってたりとなんだかバラバラ

もしかして単に時間がかかるだけなのか?
よく分からないので、ひとまず一晩あたためてみます。


一晩経って

iCloudフォトライブラリの共有をチェック

  • おー、共有の中に色々フォルダと写真が作成されてた!
  • けど若干動作が重い、スマホ側で消したはずのフォルダも一瞬表示されてて、少し画面が固まってしばらくしたら消えた

パソコンから新規共有アルバムを作成してみる

  • iCloudフォトライブラリの共有をクリック後に「新規共有アルバム」をクリックして作成

f:id:yiris1127:20170815234008p:plain

  • 「写真またはビデオを選択」をクリックして好きな写真を選び、「終了」をクリック

f:id:yiris1127:20170815235033p:plain


「・・・・・(´・ω・)」


うーん、すぐに作成されないんですけどw
ダメだ、こりゃ。10分後くらいに表示されたけど中身が表示されてなかった。
そのあと共有したメンバーにメール届いてるから参加してと伝えて、参加してもらってはじめて表示された。
このレスポンスじゃやる気しないなあ・・
仕方ない、「パソコンからスマホに共有→スマホから共有アルバム作成」ができるか試そう。

これ以上原因を調べるのも時間が無駄になりそうなので別の方法を考えます。


以上

ディレクトリごと、別のサーバに送って展開したい

1.送りたいディレクトリをまとめる

# tar cvf /tmp/dir.tar /var/sample/dir1
# ls /tmp
dir.tar

※ここでは、「dir1」というディレクトリを「dir.tar」というファイル名で「/tmp」配下にまとめる

2.まとめたファイルを送る

# scp /tmp/dir.tar root@10.10.xx.xx:/tmp
※送り先のrootユーザーのパスワードを入力

※「scp」コマンドを使って、送り先の「/tmp」配下にファイルを送る

3.送り先のサーバで、送ったファイルを展開する

# cd /var/test/
# tar xvf /tmp/dir.tar
# ls

※ここでは、「/var/test」配下にファイルを展開する


以上

ある文字列を、ファイルの行を指定して挿入したい

きっかけ

下記のように、コマンドの実行結果をあるファイルに書き出す「リダイレクト」という方法がある。

 

# echo "Hello!" >> test.txt

 

『>>』だと追記になるんだけど、これだとファイルの末尾に挿入される。

ユーザー追加とかした際に、その情報をファイルに追記するんだけど、どしても間に入れたかったのね。

なのでどうにかして、行を指定して挿入できんもんだろかと考えた。

 

方法

てっきり『>>』に何かオプションでもあるのかと思ってたけど、

そんなものはなく・・・

 

なんと、『sed』コマンドが使えるそう!

 

こんなファイルがあったとする

# cat test.txt

-----------------------------------

PEACH

APPLE

-----------------------------------

 

2行目に挿入したとする

# sed -i -e "2i BANANA" test.txt

  • -i』:上書きモードで実行する
  • -e』:指定したスクリプト(条件式)で変換処理を行う
  • 2』:挿入したい行番号
  • i 文字列』:挿入したい文字列を記載

 

実行結果

# cat test.txt

-----------------------------------

PEACH

BANANA

APPLE

-----------------------------------

 

ちゃんと、ファイルの2行目に挿入された。

なんと素晴らしい!

これは、今後も使えそうです。

 

 

以上、本日の学びでした。

 

 

ファイルを別のサーバにコピーしたい!     役に立つ『scp』 コマンド

きっかけ

開発サーバで作成したシェルスクリプトを本番サーバにコピーしたい。

WinSCPでダウンロードして、アップロードしなおすなんて手間は取りたくないし、以前のように改行コードが入ってたら困る・・・

さて、どうしよう。

 

方法

『scp』コマンドを使えば、サーバ間でファイルのこぴーができるようです。

 

例)サーバAに、コピーしたいファイル(/var/script/test.sh)があり、

  そのファイルをサーバBの『/var/script』配下にコピーするとします。

 

サーバAにログイン後、下記のコマンドを実行

# scp -p /var/script/test.sh root@192.168.10.10:/var/script/

 

詳細

  • -p』は、更新時間・アクセス時間・モードを保持する
  • /var/script/test.sh』は、サーバAにあるコピーしたいファイルを指定
  • root』は、 サーバBに接続する際のユーザー名(別ユーザでも可)
  • 192.168.10.10』は、サーバBのIPアドレス
  • /var/script/』は、サーバBに存在するディレクト

 

注意

サーバBに接続する際のユーザは、SSH接続できることが前提です。

サーバBのコピー先ディレクトリは、事前に作成されてないと失敗します。 

 

 

以上、本日の学びでした!

 

シェルスクリプト なぜかうまく実行できない!? 改行コードにご注意

シェルスクリプトが実行できない

 自分の端末にある、Atomというエディタでスクリプトを書き、

WinSCPを使ってサーバ(Cent OS6.5)にアップロードし、

root ユーザで下記のように実行権限を与えた。

 

# chmod 755 /var/script/test.sh

 

よし、実行だ!・・・ん(・ω・)?

「そんなファイルは存在しません」って怒られた。

 

うーん、権限も付与されてるし、ファイルのコマンドにも間違いはなさそう。 

一体なにが原因なのか分からず、お隣の先輩に見てもらった。

 

 

 原因

先輩:「これ、改行コードが入ってるよ。これ消したらいけるよ。」

クローゼ:「え?そうなんです?どこに入ってるんです?」

 

先輩:「ファイルを開くときに "-b" オプションをつけると見えるよ。」

※"-b"は、ファイルをバイナリモードで開くこと 

 

# vi /var/script/test.sh -b

 

なんと、一行ごとに『^M』が入ってる!!!

なんじゃこれー

 

対処

とにかく、『^M』を消さないと。

けど毎行入ってるので、一つずつ消すのは辛い。

 

そうか、置換すればいいのか!

 

# vi /var/script/test.sh -b

で、ファイルを開いた後に、viのコマンドモードで、

 

:%s/^M//g

 

と入力して [Enter] を押せば、一括で置換してくれました!

 

『^M』の入力方法に注意

これ、文字列じゃないんです。クローゼは間違たwww

コマンドモードで、次のように入力します。

  1. 『Ctrl+V』を押す
  2. 『Ctrl+M』を押す

 

スクリプトは無事に実行されました。

 

 

以上、本日の学びでした。