質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.53%
Windows

Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

MacOS(OSX)

MacOSとは、Appleの開発していたGUI(グラフィカルユーザーインターフェース)を採用したオペレーションシステム(OS)です。Macintoshと共に、市場に出てGUIの普及に大きく貢献しました。

意見交換

クローズ

20回答

2877閲覧

WindowsとMacの2台使いについて

754x

総合スコア20

Windows

Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

MacOS(OSX)

MacOSとは、Appleの開発していたGUI(グラフィカルユーザーインターフェース)を採用したオペレーションシステム(OS)です。Macintoshと共に、市場に出てGUIの普及に大きく貢献しました。

0グッド

0クリップ

投稿2023/05/19 10:46

0

0

テーマ、知りたいこと

WindowsとMacの2台使いについて

プログラムを書く際にこの2台を並行して利用することは適していないと感じます。
同じく使用している方や、有識者の方はどうするべきかコメントいただけると幸いです。

背景、状況

私は大学の研究室ではMac、自分のPCはWindowsを使用しています。
基本的にipynbを使って、pythonを使っていることが多いですが
二つのOSを使うことによる出力ファイルのcsvの文字コードや、挙動のエラーがうっとうしいです。また、先行研究は研究室内のMacで作成されているため、研究を進めるには大学に行かなければなりません。マシンパワーもMacの方があります。

理想は、研究室のMacで作成したコードをそのままgithubやUSEメモリ等で共有し、修正なしにWindowsでも動けばいいなと考えています。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

回答20

#1

meg_

総合スコア10573

投稿2023/05/19 11:01

二つのOSを使うことによる出力ファイルのcsvの文字コード

現状、それぞれのマシンでどういう設定にしているのでしょうか?統一出来ないのでしょうか?

先行研究は研究室内のMacで作成されているため、研究を進めるには大学に行かなければなりません。

自宅ではWSLでは駄目なのでしょうか?

マシンパワーもMacの方があります。

こちらについてはマシンスペックの違いではなくOSの違いで発生しているという意味でしょうか?

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

#2

754x

総合スコア20

投稿2023/05/19 12:29

#1 コメントありがとうございます。
当方初心者のため、表現に誤りがあるかもしれません。

二つのOSを使うことによる出力ファイルのcsvの文字コード

現状、それぞれのマシンでどういう設定にしているのでしょうか?統一出来ないのでしょうか?

すみません、文字コードというより改行コードの方が正しいかもしれません。
基本的には文字コードはUTF-8にしています。
LFとCRLFの違いで、すぐに読み込めないため、少々面倒に感じます。

自宅ではWSLでは駄目なのでしょうか?

現在はVSCodeにて、ipynbファイルを使用しており、ターミナルでWSLを使用できる形ではあります。
ただ、ipynbファイル上での、!を文頭につけたターミナルの起動はWSLではなくコマンドプロンプトの起動になってしまい、ターミナルを開き、コピーペーストが必要となっていて、面倒に思っています。

マシンパワーもMacの方があります。

こちらについてはマシンスペックの違いではなくOSの違いで発生しているという意味でしょうか?

表現が分かりにくくて申し訳ありません。
OSの違いではなく、マシンスペックであると思われます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

#3

Zuishin

総合スコア28656

投稿2023/05/19 12:45

Git を使っているなら autocrlf で統一できそうです。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

#4

meg_

総合スコア10573

投稿2023/05/19 12:48

OSの違いではなく、マシンスペックであると思われます。

PCを買い替えることが難しいのであればクラウドの利用はどうでしょうか?大学の規約などで禁止されていなければ有効利用できるかと思います。
買い替えかもう一台増やせるのであればMacを用意して大学と同じ環境にするのがストレスなくて一番良いかとは思います。ただ自宅でWindowsを使用されているのは何か必要な理由があるのではないでしょうか?(Windowsでないと動かないソフトもありますよね)

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

#5

umimi

総合スコア198

投稿2023/05/20 03:21

編集2023/05/20 03:23

[香車]東上☆あらし☆海美「
研究が進まなくて留年するより、自宅用に Mac を追加購入するのが、安いみみ。
Mac mini ならモニター、マウス、キーボードは、Windows PC 用の奴が流用できるみみ。
中古の Intel なら、安く買えるみみ。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

#6

Zuishin

総合スコア28656

投稿2023/05/21 07:16

autocrlf を知ってるのか知らないのか、試してみたのかみてないのか、足りてるのか足りてないのか、何も言わなけりゃ情報は集まらない。
情報を集めるのが上手い人と下手な人の差はこういうところで出る。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

#7

akbr

総合スコア88

投稿2023/05/23 01:41

Windows側でWSL(WSL2)を使うことで解決するはずです。
また、学校やMacを抜きにしても、
今後もプログラミングをするならWindows上ではなくWSL上で開発する方が大抵の場合良いでしょう。

Linux 用 Windows サブシステムとは

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

#8

hope_mucci

総合スコア4447

投稿2023/05/23 12:09

私は業務上WindowsとMacを使い分けています。GithubやOneDriveを使ってコード共有も行っています。

どちらのOSでも同じようにコードやドキュメントを扱うことを前提としているため、きちんと両OSで「共有できる」ようにコーディングように気を付けています。
どちらかのOSの機種依存にならないように、コンソール側に出力される文字コードや改行コードに依存しないように、ということを常に意識してきた結果、無意識にそのようなコードを書けるようにはなっています。

大学の先行研究の成果がMacOSに依存するコードで書かれているのであれば、あなたもそれに合わせるのが賢明であると思います。Windowsでも動作することが理想ですが、理想を実現するのが難しければこちらから現実に歩み寄るのが結局一番コストが低くなります。

私がMacとWindowsを使い分けるのも、結局案件によってはどちらかに依存しなければならない状況もあるので両方の環境を用意しているに過ぎません。パソコンも道具なので適材適所による使い分けをしてるわけですね。

研究の本質でない部分(この件ではMac依存の仕組みがあってそれを容易に解決できない)で引っかかるのは時間と情熱がもったいないので、足繁く研究室に通うか(私は大学時代よく研究室に泊まり込みました)、いっそ個人でMacBookを購入してしまうのも解決策の一つではないかと思います。学割もありますしね。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

#9

754x

総合スコア20

投稿2023/05/23 12:19

編集2023/05/23 12:22

#3
コメントありがとうございます。

autocrlfについて調べた限りだと、mac、Windowsどちらにおいても、Trueにしておけば、前述の改行コードについては解決できそうですね。ありがとうございます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

#10

754x

総合スコア20

投稿2023/05/23 12:28

#4
新調するのが一番容易であるという意見は最もだと思います。
ただ、困っている点としては、通学するのが面倒点や終電までしか研究できない点、とっさに進捗を生むことができない点、程度なので、すでに動くPCを持ちながら、研究用に追加で購入するほどリターン的には大きくないと感じています。
「無理なら無理で諦めるけど、意見交換で良い方法が見つかればいいな」程度の熱量だとお考えください。

ソフト的な制約はありません。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

#11

754x

総合スコア20

投稿2023/05/23 12:31

#5
コメントありがとうございます。

留年するほど深刻でないことをまずお伝えしておきます。
私の質問文が悪いのだとおもいますが、家でも快適に研究が進められたらなという程度の意見交換の場でございます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

#12

754x

総合スコア20

投稿2023/05/23 12:36

#6
コメントありがとうございます。
約2日間の返信の滞りで、不快な気分にさせてしまい申し訳ありません。
先ほど、#3にコメントを回答を返させていただきました。
重複しますが、autocrlfについて調べ、要件を満たす機能であると確認しました。

そちらのコメントの足りている足りてないとはどういう意味でしょうか?

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

#13

754x

総合スコア20

投稿2023/05/23 12:40

#7
コメントありがとうございます。
おそらく大学の授業でそちらの設定をして、Ubuntuを導入することで、WindowsでもMacのコマンドを動かした等の記憶はあるのですが、あまりよく分からないまま終わってしまいました。

当時の記憶では、コマンドプロンプトのようなCUIの認識なのですが、googleColabやJupyterLabのような環境でのプログラミングもできるのでしょうか?

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

#14

754x

総合スコア20

投稿2023/05/23 12:46

#8
コメントありがとうございます。
なるほど、そういった環境で身につく能力もあるのですね。コードがノリに乗っているときは泊まり込みも視野に入れてみます笑

初心者ながら自分で試してみて、難しそうだと思いながら、こちらに質問させていただきました。
そのため、ある程度諦めてはいたのですが、いくつか新しい情報をいただきましたので、そちらも試しながらやっていこうと思います。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

#15

Zuishin

総合スコア28656

投稿2023/05/23 12:48

#6
四日間の沈黙の後、攻撃的な表現を含む不快な回答という修正依頼とともに返事があったけど、足りてるか足りてないかは要件を満たしてるか満たしてないかということです。

既にある回答に無言であれば、他の回答者も回答のしようがないでしょう。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

#16

754x

総合スコア20

投稿2023/05/23 13:11

#15
コメントありがとうございます。

修正依頼の理由としては
•本質問に関係のない、返信がなかったことだけに対するコメントである
•質問者を侮辱する内容である
の2点になります。
今後は、返信に時間を要する可能性があることをご了承ください。

そういった意図でしたか、返信の通り、改行コードに関しては満たしていますね。

もう一つの課題としては、jupyternotebookでのコードブロックにおいて、!をつけることで機能するコードが、差異がある(macだとターミナル、windowsだとコマンドプロンプト)というものがあります。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

#17

akbr

総合スコア88

投稿2023/05/24 01:46

編集2023/05/24 01:52

#13

もし開発がMac/WindowsのGUIベースのアプリケーション依存であればWSLは使えないかもですが
CUI(コマンドライン)ベースの開発であればとりあえずWSLが利用可能です。
認識の通り、PC内にUbuntu等のLinuxをインストールしてWindowsと同時に利用可能とするものです。
私は使ったことないですがLinuxのGUIも使えるようなので、GUIベースのアプリケーションが必要でもLinux版があれば使えるかもしれません。
Linux 用 Windows サブシステムで Linux GUI アプリを実行する

GoogleColaboはWebサービスでローカルとのデータのやり取りは無い?はずなので
普通にWindowsのブラウザでGoogleを開けばよいはずで
JupyterLabは利用したことありませんが見たところUbuntu(WSL)にインストールできそうな気はします。
Ubuntu22.04にJpyter Lab環境構築

ただWSLのセットアップやメンテナンスは少しLinuxの知識が必要で

おそらく大学の授業でそちらの設定をして、Ubuntuを導入することで、WindowsでもMacのコマンドを動かした等の記憶はあるのですが、あまりよく分からないまま終わってしまいました。

という感じなら詰まる可能性もあります。そんなに難しいことではないのですがWSLに少し癖もあり。
大学に相談できる相手がいるとよいのですが。

追記

いつもの質問形式のやつかと思い投稿しましたが意見交換という機能が追加されたんですね。
ipynbを利用したことが無く!でターミナル起動というのがイメージ湧かなくてこれ以上アドバイスできなさそうなのと
意見交換の場の規約がわかってないので一旦ここまでとします。
ありがとうごうざいました。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

#18

xebme

総合スコア1081

投稿2023/06/18 11:18

編集2023/06/18 11:30

#16

!をつけることで機能するコードが、差異がある(macだとターミナル、windowsだとコマンドプロンプト)というものがあります。

Macを基準にするならWindows側にエイリアスを定義するか、それとも両方の環境にエイリアスを定義して環境に依存しなくするかです。

Built-in magic commands

mac

ipython

1! ls

windows

ipython

1! dir

lsに統一したければ%aliasを使って環境ごとにシステムコマンドを指定します。
mac

ipython

1%alias ls ls

windows

ipython

1%alias ls dir

両方の環境に対応するコマンドがないときはスクリプトを記述するなどの工夫が必要になります。
(追記) すでにlsという変数が定義されていたらエイリアスは無視されます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

#19

xebme

総合スコア1081

投稿2023/06/18 11:50

venv

Macでコマンドベースで作業しているのなら、WindowsでPower Shellを起動(コマンドプロンプトでも好きなほうで)、venvで環境を構築するのが良いかもしれません。操作の統一感があるでしょうし、他の人が研究環境をWindowsに移植するにしても手順を記録に残しやすいと思います。

venv --- 仮想環境の作成

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

#20

xebme

総合スコア1081

投稿2023/06/20 22:57

キーボード

毎日Mac/Linux/Windowsを使っているとキーボードはすべてのマシンでUSに統一されました。無意識的に使うものですから同じ操作ができること。漢字変換のキー操作も。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

最新の回答から1ヶ月経過したため この意見交換はクローズされました

意見をやりとりしたい話題がある場合は質問してみましょう!

質問する

関連した質問