【Bash】Windows Subsystem for Linux【WSL】3

■ このスレッドは過去ログ倉庫に格納されています
1login:Penguin2018/06/05(火) 04:49:41.27ID:ZoJ8+rBb
Install the Windows Subsystem for Linux
https://docs.microsoft.com/en-us/windows/wsl/install-win10

前スレ
【Bash】Windows Subsystem for Linux【Ubuntu】2 https://mao.5ch.net/test/read.cgi/linux/1468149353/

2login:Penguin2018/06/05(火) 04:52:33.08ID:ZoJ8+rBb
改行ミスった
前スレ再貼り
【Bash】Windows Subsystem for Linux【Ubuntu】2
https://mao.5ch.net/test/read.cgi/linux/1468149353/

3login:Penguin2018/06/05(火) 08:17:41.48ID:oWsLrzCd
おつ

4login:Penguin2018/06/05(火) 14:57:59.30ID:rv0G6Jae
>>1-2乙!

Home版もWSLでそのままdocker動くようになったらメッチャ便利だが
そういう予定はないんだろか

5login:Penguin2018/06/05(火) 15:35:24.57ID:gIcikoiF
おつ。

6login:Penguin2018/06/05(火) 15:50:19.05ID:ZBtY/VOq
>>4
64bitならhomeでもいけるんじゃないの?

7login:Penguin2018/06/05(火) 21:40:53.87ID:gIcikoiF
Windows上でLinuxバイナリを作れるのは素晴らしいことで、もしかするとJavaの利点を吹き飛ばしてしまうかもしれない。

8login:Penguin2018/06/05(火) 21:43:40.80ID:gIcikoiF
サーバサイドでC++を使うような流れができるかもしれないと思うのでした。

9login:Penguin2018/06/05(火) 21:44:49.48ID:WdjVIiA1
ねーよw

10login:Penguin2018/06/06(水) 00:22:16.33ID:fGoeBn2T
MSYSの環境作るのたるいからWSLでmingwにしたw

11login:Penguin2018/06/06(水) 00:49:31.57ID:QLTWDKnR
>>10
クロスコンパイルには最適な環境ですね。

12login:Penguin2018/06/06(水) 01:28:56.78ID:qKaM0xvV
>>7
> Windows上でLinuxバイナリを作れるのは素晴らしいことで、
だからなに?って感じだなぁ
> もしかするとJavaの利点を吹き飛ばしてしまうかもしれない。
わからんから説明してくれ

13login:Penguin2018/06/06(水) 02:51:29.06ID:hN7tu3YC
一度かけばどこでも動くってことじゃね?

14login:Penguin2018/06/06(水) 06:30:34.80ID:2O90Fo+x
書くのは一度、デバッグは・・・の再来になりそうだなぁw

15電波いつぱい2018/06/06(水) 08:36:23.61ID:FPVhL3fX
>>10
wsl と mingwって全くの別物だと思うんだけど、どう関係させるの?

16login:Penguin2018/06/06(水) 09:25:17.12ID:QLTWDKnR
>>15
WSLにmingwパッケージを入れてWindowsのバイナリをコンパイルできる。
クロスコンパイルってやつ。

17login:Penguin2018/06/06(水) 11:45:30.96ID:AI9i/Z9P
普通にVisualStudioでいいだろ

18login:Penguin2018/06/06(水) 12:16:00.43ID:9DNa5U9j
>>14
C++17だと大丈夫みたいだぞ。
C++03の頃は、clで確認後、gccでビルドすると通らないのが普通だった。
必ず修正が必要で、すり合わせを行っていた。
ところがC++17を指定するとgccが賢くなるらしく、すり合わせの必要が全くない。
ちなみにC++17はgcc7からなので、例えばUbuntu16.04などにはパッケージがない。

19login:Penguin2018/06/06(水) 12:25:16.58ID:J8/ewzT3
SwiftをWSLで動かそうとしたが、コンパイルが低速でVMでやったほうが速かった・・・

20login:Penguin2018/06/06(水) 12:26:56.27ID:9DNa5U9j
Visual Studio 2017、CMakeプロジェクト、WSLという環境だと、インテリセンスがLinux側の標準ヘッダを拾ってくれなくてWindows側にフォールバックするな。
何か設定が必要なんだろうか。

21login:Penguin2018/06/06(水) 12:33:13.41ID:9DNa5U9j
>>19
LinuxにもVCPKG導入して使うことにしたんだけど、Boostですら何とかなってるけどな。

22login:Penguin2018/06/06(水) 12:40:12.82ID:9DNa5U9j
新しめの環境が使いたいC++使いは、WSLにUbuntu18.04を入れるのがお勧め。
これでgcc7が使える。
それでも、ライブラリは最新じゃないから、パッケージマネージャとしてVCPKGを導入したほうが良い。

23login:Penguin2018/06/06(水) 13:36:37.25ID:ngQl1eJd
>>20
どうせ環境変数だろ

24login:Penguin2018/06/06(水) 13:42:37.51ID:9DNa5U9j
>>23
まあ何かそういう単純なことなんだろうけどな。

25login:Penguin2018/06/06(水) 13:43:27.97ID:9DNa5U9j
ビルドはできるので、CMakeCacheには入っているはずなんだけどなあ。

26電波いつぱい2018/06/06(水) 20:47:00.10ID:FPVhL3fX
>>16
なるほど win 上のlinuxでwinのバイナリを作るのは不思議な気がするけど、msys使うのと変わらないのか

27login:Penguin2018/06/06(水) 20:55:48.88ID:SUG0iLYB
尊師はグレースホッパー賞受賞してるんだな。

28login:Penguin2018/06/08(金) 13:42:10.24ID:5F4N0yW+
インテリセンスの問題は、Linuxから情報を収集するのに時間が必要だっただけで、普通にLinux側のヘッダに合わさったわ。
Linux側のSSHサーバーを情報収集が終わるまで起動したままにしとかないとダメってことだな。

29login:Penguin2018/06/08(金) 15:49:05.77ID:VkPlU366
新着レス通知サービスでスレに張り付く必要なしに!
https://aichi-jin.net/notifier/

30login:Penguin2018/06/08(金) 18:40:25.67ID:f7KlTzKv
Linux側のシステム・ヘッダでインテリセンスが効くようになったものの、問題発生。
CMakeで指定しているC++17の設定が反映されていない。
__cplusplus < 201103Lに引っかかってしまう。
ビルド時はきちんと設定されているのだが。

31login:Penguin2018/06/08(金) 19:06:13.26ID:OJuwRDUg
しらねーよ

32login:Penguin2018/06/08(金) 19:08:11.52ID:TmMHprIb
座間亜

33login:Penguin2018/06/08(金) 19:14:28.03ID:f7KlTzKv
ホントは知ってるんだろ。
教えれ。

34login:Penguin2018/06/08(金) 19:15:22.19ID:f7KlTzKv
もしかしてこれも待ってればいいだけなのか?

35login:Penguin2018/06/08(金) 22:39:53.33ID:gC18cOCh
環境を作ることが目的になってなければいいけど。
どういうプロジェクトに参画してるんだろう。

36login:Penguin2018/06/08(金) 22:48:31.44ID:f7KlTzKv
今のところ、clとgccの違いはテンプレート仮引数名の衝突だけだな。
C++17を有効にするとだいぶ統一されるようだ。

37login:Penguin2018/06/08(金) 22:54:42.65ID:P57pmqSu
Excelから出力したCSVのように一行(?)の中に改行が含まれた
データを扱うにはどうしたら良いでしょうか?

38login:Penguin2018/06/08(金) 22:57:54.66ID:TmMHprIb
WSLで処理するのかね?

39login:Penguin2018/06/08(金) 23:01:56.91ID:4jEKWbxk
sed使う?

40login:Penguin2018/06/08(金) 23:04:35.38ID:f7KlTzKv
>>37
セル内改行は\n、カラムの改行は\r\nになってるらしいよ。

41372018/06/08(金) 23:11:14.05ID:xiQiBDa/
もう少し具体的に書きます。

カンマ区切りのCSVデータだと仮定して、
シェルスクリプトの中に関数を一行ごとに呼び出し、
列を引数に対応させたいです。

例えば以下のような内容のファイルがあったとして
a1,a2,a3,a4
b1,b2,b3,b4
c1,c2,c3,c4

syori "a1" "a2" "a3" "a4"
syori "b1" "b2" "b3" "b4"
syori "c1" "c2" "c3" "c4"

という風にsyori関数を呼び出したいのです。

ただし実際には各項目(a1等の部分)にExcelから出力したデータのように
改行やカンマやダブルクォートやシングルクォートや空白が入ることがあるのです

42login:Penguin2018/06/08(金) 23:14:50.91ID:OJuwRDUg
>>37
どういうレベルで扱いたいんだ?
プログラム組めるならその言語用CSV用ライブラリ使えば普通に対応できる。

43login:Penguin2018/06/08(金) 23:15:27.30ID:xiQiBDa/
>>40
それで思い出しました。
各項目には \ が入ることもあります。

今回はCSVではありませんが、RFC4180(=ExcelのCSVの仕様)では
改行が\nのようにエスケープされません

https://ja.wikipedia.org/wiki/Comma-Separated_Values

> フィールドがコンマ、ダブルクォート、改行を含む場合は、かならずダブルクォートで囲む。
> また、フィールドに含まれるダブルクォートは2つ並べてエスケープする。
>
> "日本 CRLF
> 国","""東京""","127,767,944" CRLF

↑「日本国」の国の前に改行が入っている場合

44login:Penguin2018/06/08(金) 23:16:43.70ID:OJuwRDUg
つうかWSLの話じゃねえ

45login:Penguin2018/06/08(金) 23:17:33.26ID:xiQiBDa/
あ、スレ間違えました。移動します。(おかしいなぁ?)

46login:Penguin2018/06/08(金) 23:18:51.34ID:xiQiBDa/
こっちに移動します。

シェルスクリプト総合 その27
https://mevius.5ch.net/test/read.cgi/unix/1525337663/

47login:Penguin2018/06/08(金) 23:24:04.02ID:f7KlTzKv
Awkマスターのスレで聞くとわかるんじゃないだろか。
まさにWSLの有効な使い方だろな。

48login:Penguin2018/06/08(金) 23:27:57.65ID:f7KlTzKv
Bashとスレタイに入ってるから、ここに来たのか。

49login:Penguin2018/06/08(金) 23:49:11.04ID:TmMHprIb
awkじゃ改行コードの検出は無理だろうな。perlとかPythonの領域じゃね

50login:Penguin2018/06/09(土) 00:28:04.99ID:zJnVUrKU
>>49
アホ発見

51login:Penguin2018/06/09(土) 07:11:37.11ID:DzL7aqiq
>>50
KWSK

52login:Penguin2018/06/09(土) 07:42:27.99ID:bAfqRkxr
UNIX板のスレによると、Linuxのawkは普通のawkより強いらしいぞ。

53login:Penguin2018/06/09(土) 08:02:24.52ID:b4L3Rbm8
行単位で処理するawkでフルスペックCSVが処理出来る程強化
されているのかぁ凄いなぁ

54login:Penguin2018/06/09(土) 09:43:32.83ID:qyWyw5bM
多くは書かねえ
たった一行

55login:Penguin2018/06/09(土) 10:19:35.27ID:EPiw4z0d
まさに奥の細道

56login:Penguin2018/06/10(日) 01:37:08.88ID:l34j97YU
>>52
LinuxというかGNUのな。GNUはオリジナルに機能拡張している
LinuxのコマンドはほとんどオリジナルのではなくGNUの。Linuxはオリジナルを入れてないからGNU Awkをawkとしている。オリジナルがあるとこではgawk(GNU自体がgawkと称しもする)だな

>>51
getlineを使えばやってやれないこともないだろう

57login:Penguin2018/06/10(日) 19:51:04.64ID:tySbLpkG
April 2018 UpdateしたらWSLの環境が消滅したんだけど
どうしてくれるの

58login:Penguin2018/06/10(日) 20:00:21.05ID:tySbLpkG
なんかストアから新しいディストリビューション入れたら旧いUbuntu環境も立ち上がるようになった
わけがわからないよ

59login:Penguin2018/06/10(日) 20:08:04.19ID:Zb+VVfMm
電源入れた後はエラーで起動せず、再起動後にやっと動くという謎の不具合。

60login:Penguin2018/06/10(日) 20:34:53.30ID:xzpIDwN1
DockerみたいにExportしてあとで環境を再構築できる機能が欲しいな。
そうじゃないと安心して使えない。

61login:Penguin2018/06/11(月) 00:23:31.37ID:cargbX7Z
>>60
ようするに環境構築の話だろ?
ansibleとか使えば?

62login:Penguin2018/06/11(月) 22:21:04.06ID:qMOfIRRg
>>60
WSLにこだわるなら、 tarで / のバックアップとってとかじゃダメ?

まか、そういう使いかたならVirtualbox なり VMWareが向いていると思う。

63login:Penguin2018/06/12(火) 01:02:35.21ID:k63k9iOK
というかだよ。
WSLの設計としては、ソースコードはC:\Users\name 以下に置いて
それを /mnt/c/Users/name から参照する想定でしょ?
シンボリックリンクをつければ ~/ 以下から参照できるし
だからWSLの環境が削除されてもデータは残る

64login:Penguin2018/06/12(火) 01:21:09.49ID:3Yh+cb/p
そもそも/mnt以下で作業せんなあ

65login:Penguin2018/06/12(火) 01:28:40.33ID:k63k9iOK
>>64
うん。だからシンボリックリンクでHOME以下に
持ってくればいいわけだよ

66login:Penguin2018/06/12(火) 02:10:22.69ID:3Yh+cb/p
そういうことじゃなくてdrvfs上で作業したくないという話

67login:Penguin2018/06/12(火) 03:49:02.76ID:k63k9iOK
だからdrvfs上で作業しろよ
パーミッション、タイムスタンプ、保存できるようになっただろ

68電波いつぱい2018/06/12(火) 08:35:33.26ID:PtHKAO/g
>>66
drvfsで作業したくない理由ってなに、?

69login:Penguin2018/06/12(火) 13:34:58.21ID:OTTcUzHj
Ubuntu 16.04 も、自動的に、新しいバージョンに更新されていた

70login:Penguin2018/06/12(火) 13:39:28.00ID:OTTcUzHj
漏れは、~/.bash_aliases に、ドキュメントフォルダーへのalias を定義してる

export LANG=ja_JP.UTF-8

shopt -s expand_aliases

alias mydoc='cd /mnt/c/Users/Owner/Documents'

71login:Penguin2018/06/12(火) 18:07:27.51ID:yxOQVLv7
WindowsにLinuxが入った!
今度のWindowsはLinux入り!

72login:Penguin2018/06/12(火) 18:45:30.30ID:Yoj6Uvnq
Linuxは入ってねーよ。
もしLinuxはGPLなんだからWindowsもソース公開しなきゃならない!
とかいうやつが現れたりしても無駄。
なにせLinuxは入ってない

Windowsが独自にLinux互換機能を搭載しただけ
WindowsというOSを作っていながら、
片手間でLinux OS互換にするとはすごいね

73login:Penguin2018/06/12(火) 19:35:14.81ID:yxOQVLv7
入った!
超入った!
Windows + Linuxのお得なWindowsが今度のWindows!

74login:Penguin2018/06/12(火) 19:36:45.44ID:Yoj6Uvnq
あー、まあそれでいいよw
WindowsがLinux相当の機能を含んだのはそのとおりだし
鬼に金棒ってやつだ。
もうわざわざLinuxを使う必要がない

75login:Penguin2018/06/12(火) 20:39:27.18ID:6oT4MB0T
Linuxの機械学習系のソフトで、実用的な速度で学習ができれば申し分ないんだが・・・

76login:Penguin2018/06/12(火) 22:04:05.34ID:fJ4Xf2OU
機械学習を計算サーバでない場所でやろうというのがおかしい

しかも「実用的な速度」などとのたまう

77login:Penguin2018/06/12(火) 22:30:44.63ID:RvhtRCit
unixもどきのlinuxもどきが使えるようになったとか言って喜んでる欠陥OSユーザーwww
本物のunixであるmacの前にひれ伏すが良い

78login:Penguin2018/06/12(火) 22:36:45.57ID:XAW4hJh7
MacもMacで独特のクセがある。
ユーザーランドはGNUなのかBSDなのかどっちつかずで・・・

79login:Penguin2018/06/12(火) 22:39:42.13ID:yxOQVLv7
本物のWindowsであるWinndowsに敬礼!

80login:Penguin2018/06/13(水) 06:36:33.12ID:Jb47/52i
>>76
要はGPUを使いたいんだよね。

81login:Penguin2018/06/13(水) 17:21:15.77ID:/WIHRBuT
Microsoft Linuxの時代来たーー!!!

82login:Penguin2018/06/13(水) 17:41:06.39ID:zCfFIGtf
Lindows 2.0だな

83login:Penguin2018/06/13(水) 17:47:24.43ID:/WIHRBuT
それは、ライブドアウィンドウズ。

84login:Penguin2018/06/13(水) 17:48:07.61ID:/WIHRBuT
Microsoftが作った本物のLinuxキターー!!

85login:Penguin2018/06/14(木) 02:51:46.72ID:A/3HrHQn
中身うぶんつとかすーぜーじゃん
せんとくんもってこいや

86login:Penguin2018/06/14(木) 06:03:56.27ID:PjHsdcGq
セント君はレッドハットとの契約上、Microsoft社のカーネルで稼働させられないらしいけど。

87login:Penguin2018/06/14(木) 08:41:36.56ID:u3exA41c
>>86
商用パッケージが含まれるRHELならともかく、
CentOSはもともとRHELと無関係のプロジェクトで
レッドハットと何ら契約を結んでないのでそれはありえない
そんなことをしたらGPL違反になる

88login:Penguin2018/06/14(木) 08:44:34.29ID:u3exA41c
WSL上でCentOSが使いたいなら、こんなものもある
https://github.com/RoliSoft/WSL-Distribution-Switcher

これらに対応しているようだ(多分イメージを用意すればその他も動くのだろう)

debian, ubuntu, fedora, centos, opensuse, mageia,
oraclelinux, alpine, crux, clearlinux

89login:Penguin2018/06/14(木) 08:51:52.98ID:urVNXLRO
>>87
今となってはRedHat様がスポンサーのプロジェクトですがw

90login:Penguin2018/06/14(木) 09:02:30.55ID:PjHsdcGq
>>87
セント君はレッドハットと協業契約を結んでいて、そのおかげで訴訟の心配なく使えるようになったのが売りだと思いますが。

91login:Penguin2018/06/14(木) 09:04:01.35ID:PjHsdcGq
セント君を使ってもレッドハットから訴えられることはありません。
だけども、Windows上で動かすことはできません。
まあそんな仕組み。

92login:Penguin2018/06/14(木) 09:46:28.68ID:u3exA41c
何を言ってるんだ? CentOSとレッドハットが協業したからって
OSのライセンスがGPLである以上、Windows上で動かすことが
できないなんて追加ライセンスはつけられないんだが?

それにマイクロソフトもレッドハットと協業している。仲いいんやで?w

マイクロソフトとレッドハットがついに結んだ画期的パートナーシップの全貌
https://forbesjapan.com/articles/detail/10256

Microsoft AzureではRHELとCentOSもサポートしている
https://azuremarketplace.microsoft.com/ja-jp/marketplace/apps/category/compute?page=1&subcategories=operating-systems

ほんと、なんですぐバレる嘘をつくんだろう?w

93login:Penguin2018/06/14(木) 10:11:22.91ID:PjHsdcGq
>>92
Redhatをコピーして売ることはできません。

94login:Penguin2018/06/14(木) 10:51:02.64ID:TErDx0lx
RedhatはしらんけどCentOSは売れるぞ

95login:Penguin2018/06/14(木) 11:37:44.04ID:PjHsdcGq
レッドハットはオープンソース企業なので、大規模にセント君売ったら、訴訟起こされるだけですよ。

96login:Penguin2018/06/14(木) 11:38:48.09ID:PjHsdcGq
レッドハット傘下で細々とやる分にはお目こぼしいただけるのです。
体験版みたいな感じですね。

97login:Penguin2018/06/14(木) 12:03:40.25ID:w6GdFZos
なにいってんだこいつ

98login:Penguin2018/06/14(木) 12:16:16.91ID:HCvIp01z
アホが暴れててワロタw

99login:Penguin2018/06/14(木) 12:20:27.34ID:zG+6n9rw
>>94
> RedhatはしらんけどCentOSは売れるぞ

CentOSはコピーして売っても良いことを知ってるから
>>93はあえてRedhatだけしかかかなかったんだよ。

つまりCentOSは使ってもいいと
本当は知ってるわけw

100login:Penguin2018/06/14(木) 13:04:57.00ID:sUb83UbF
そういや、赤帽の軽トラ見なくなったな・・・

■ このスレッドは過去ログ倉庫に格納されています