Win10 14316 bash
更新
WSL
~~~
现在添加删除组件中勾选 Windows Subsystem for Linux
然后运行bash,会提示一个链接,浏览器打开后会出现App Store安装Ubuntu
再次运行bash,等待安装完成。(或者:lxrun /install) 用zsh代替bash
$ sudo apt install zsh -y
$ zsh
选择2
$ vim ~/.bashrc
在开头输入:
if [ -t 1 ]; then
exec zsh
fi
$ exit
以后运行bash会自动打开zsh
14316测试版中已经提供bash组件,默认关闭的,启用的方法是先选中“开始->设置->更新和安全->针对开发人员->开发人员模式”,然后按 Win+X,F 打开“程序和功能”,点击左侧的“启用或关闭Windows功能”,然后找到并勾选 Windows Subsystem for Linux (Beta) ,确定后会提示重启启动系统。
系统重启完成后,按 Win+X,A 打开命令提示符(或者按 Win+R 打开运行对话框),输入 bash 回车,第一次运行会从网上下载Ubuntu linux组件,按提示输入y。
-- Beta feature --
This will install Ubuntu on Windows, distributed by Canonical
and licensed under its terms available here:
https://aka.ms/uowterms Type "y" to continue: y
Downloading from the Windows Store... %
Extracting filesystem, this will take a few minutes...
????! ???????...
root@localhost:~#
查看版本信息和分区映射:
root@localhost:~# uname -a
Linux localhost 3.4.+ # PREEMPT Thu Aug :: CST x86_64 x86_64 x86_64 GNU/Linux
root@localhost:~# cat /etc/issue
Ubuntu 14.04. LTS \n \l
root@localhost:~# ls -al /mnt
total
drwxrwxr-x root Apr : .
drwxrwxr-x root root Apr : ..
drwxrwxrwx root root Apr : c
drwxrwxrwx root root Apr : d
root@localhost:~# sudo ls /dev
adss fb0 kmsg ptmx random tty urandom
block input null pts shm tty0 zero
root@localhost:~#
注意是root用户,/dev 下也没有很多的设备,输入 exit 可退出bash。
/root 目录对应Windows系统的 %localappdata%\lxss\root 文件夹(注意,不要删除lxss目录,bash会失败)。
如果不幸删除了lxss或者其他原因 bash 启动失败。可以在CMD里用下面两条命令卸载再重新安装:
echo y|lxrun /uninstall
echo y|lxrun /install更新linux子系统,在CMD里运行:
lxrun /update // 更新linux子系统
// - 或者 -
lxrun /update /critical // 只更新关键更新,更新完成后会强制关闭linux进程
使用命令 apt-get 安装软件前建议先在 /etc/apt/sources.list 文件前端添加国内的镜像服务器, http://mirrors.163.com/ubuntu 是163的镜像源:
deb http://mirrors.163.com/ubuntu trusty main restricted universe multiverse
deb http://mirrors.163.com/ubuntu trusty-upadates main restricted universe multi
verse
deb http://mirrors.163.com/ubuntu trusty-security main restricted universe multiverse
可用vi编辑:
vi /etc/apt/sources.list按3yy复制原来的3行,按Shift+G到结尾,按p粘贴。输入 :1,3s/\w*\.ubuntu/mirrors.163/ 替换前3行为163的镜像,Shift+ZZ保存退出。
然后用 apt-get update 命令更新源(163的更新源最后会出现一些校验警告,可以忽略)。
安装 git:
apt-get --assume-yes install git
--assume-yes可选:安装交互全部yes。
删除用remove替换install。
自动移除:
apt-get autoremove
查询7z软件:
apt-cache search 7z
----
下面是安装swift编译环境的例子(未成功):
1. 安装 CLang 和 libicu-dev
apt-get install clang libicu-dev
2. 下载swift发行包(到swift.org里找ubuntu14.04平台的版本,目前DEV快照是Swift 3.0预览版本)
curl -O https://swift.org/builds/development/ubuntu1404/swift-DEVELOPMENT-SNAPSHOT-2016-03-24-a/swift-DEVELOPMENT-SNAPSHOT-2016-03-24-a-ubuntu14.04.tar.gz
注:可以先在Windows系统中用下载工具下载好,然后用touch命令在linux文件系统里先创建个同名的文件
root@localhost:~# touch swift-DEVELOPMENT-SNAPSHOT-2016-03-24-a-ubuntu14.04.tar.gz
然后再用Windows进行文件复制,覆盖到 %localappdata%\lxss\root 文件夹里。
3. 解压tar.gz包。
tar xzf swift-DEVELOPMENT-SNAPSHOT----a-ubuntu14..tar.gz
如果产生了如下错误:
root@localhost:~# tar zxf swift-DEVELOPMENT-SNAPSHOT----a-ubuntu14..ta
r.gz
tar: swift-DEVELOPMENT-SNAPSHOT----a-ubuntu14./usr/bin/swift-autolink-extract: Cannot create symlink to ‘swift’: Invalid argument
tar: swift-DEVELOPMENT-SNAPSHOT----a-ubuntu14./usr/bin/swiftc: Cannot create symlink to ‘swift’: Invalid argument
tar: swift-DEVELOPMENT-SNAPSHOT----a-ubuntu14./usr/bin/lldb-server: Cannot create symlink to ‘lldb-server-3.9.’: Invalid argument
tar: swift-DEVELOPMENT-SNAPSHOT----a-ubuntu14./usr/bin/lldb: Cannot create symlink to ‘lldb-3.9.’: Invalid argument
tar: swift-DEVELOPMENT-SNAPSHOT----a-ubuntu14./usr/bin/lldb-mi: Cannot create symlink to ‘lldb-mi-3.9.’: Invalid argument
tar: swift-DEVELOPMENT-SNAPSHOT----a-ubuntu14./usr/lib/liblldb.so: Cannot create symlink to ‘liblldb.so.3.9.’: Invalid argument
tar: swift-DEVELOPMENT-SNAPSHOT----a-ubuntu14./usr/lib/python2./site-packages/lldb/_lldb.so: Cannot create symlink to ‘../../../../lib/liblldb.so’: Invalid argument
tar: swift-DEVELOPMENT-SNAPSHOT----a-ubuntu14./usr/lib/python2./site-packages/lldb/lldb-argdumper: Cannot create symlink to ‘../../../../bin/lldb-argdumper’: Invalid argument
tar: Exiting with failure status due to previous errors
改用7z来解压,设置可执行权限。
rm -rf swift-DEVELOPMENT-SNAPSHOT----a-ubuntu14.
apt-get install p7zip-full
7z x swift-DEVELOPMENT-SNAPSHOT----a-ubuntu14..tar.gz
7z x swift-DEVELOPMENT-SNAPSHOT----a-ubuntu14..tar
rm swift-DEVELOPMENT-SNAPSHOT----a-ubuntu14..tar
chmod +x /root/swift-DEVELOPMENT-SNAPSHOT----a-ubuntu14./usr/bin/*
4. 配置环境变量,编辑 ~/.bashrc 文件,结尾加入
export PATH=/root/swift-DEVELOPMENT-SNAPSHOT-2016-03-24-a-ubuntu14.04/usr/bin:"${PATH}"
5. 重新载入配置,查看结果:
root@localhost:~# source ~/.bashrc
root@localhost:~# swift --version
Swift version 3.0-dev (LLVM b010debd0e, Clang 3e4d01d89b, Swift 7182c58cb2)
Target: x86_64-unknown-linux-gnu
root@localhost:~#
6. 目前仍不能进入REPL环境或者编译swift文件。
编译错误:
<unknown>:0: error: could not load the swift standard library
Win10 14316 bash的更多相关文章
- win10 git bash 闪退
使用ghost重装了win10 专业版后.安装git,尝试重装了n个版本的git,右键git bash here 直接闪退,直接进入安装目录打开git-bash.exe依旧闪退, git右键点击Git ...
- [转]学习win10的bash使用ssh连接远程服务器
1. 前言 微软已经在Win10一周年更新预览版中加入了Ubuntu Bash命令支持,相当于一个小型的linux系统,本来连接远程服务器的话,要使用putty啥的,现在可以用这个直接连接,我来讲讲步 ...
- Win10安装bash慢的解决方案
电脑的Win10系统经过最近一年大量软件的装装删删,感觉已经有问题了,而且也存在大量无法清理的垃圾,占用着宝贵的SSD空间... 重新做系统的想法已经有一段时间了,正好赶上Win10的大更新 Crea ...
- 【深夜急报,Win10下的Linux子系统之Bash】
[在Windows下进行的编程人员,你真的需要学习下Linux] 手册:<Linux 命令手册(特洛伊版2.0)> 链接: https://pan.baidu.com/s/1skrVSvV ...
- linux下安装openmpi
之前在win10的bash下折腾很久没有成功,后来经高人指点,发现其实一条命令就行了. sudo apt-get install libopenmpi-dev openmpi-bin 对的,就这一条命 ...
- 强大的Cmder
why 漂亮,包装并美化了各个shell 带task功能,能记忆,能执行脚本 配合win10的bash,能实现类似xshell的功能 注意点 需要注意的一点,Cmder来源于另外一个项目ConEmu, ...
- Linux dd命令制作U盘启动盘
linux下的dd命令来自于coreutils:http://www.gnu.org/software/coreutils/ https://jingyan.baidu.com/article/d45 ...
- 为Visual Studio添加快捷工具
添加额外工具: Tools -> External Tools... 1. 添加Git Console Title: Git Console Command: C:\Program Files\ ...
- Linux 基础学习1
目录 Linux 基础学习 用户登录 终端 交互式接口 bash 修改ssh连接慢的步骤 命令提示符 显示提示符格式 命令 别名 命令格式 获取命令的帮助信息 man bash 快捷键 tab 键 引 ...
随机推荐
- 洛谷 P2523 [HAOI2011]Problem c
洛谷1或洛谷2,它们是一样的题目,手动滑稽- 这一题我是想不出来, 但是我想吐槽一下坐我左边的大佬. 大佬做题的时候,只是想了几分钟,拍了拍大腿,干脆的道:"这不是很显然吗!" 然 ...
- Python里面如何拷贝一个对象?
import copy lst=[1,2,3,4,[1,2]] # 复制列表lst,命名lst2 lst2=copy.copy(lst) print(f'这是lst3:{lst2}') # 深拷贝 l ...
- git钩子
定义: 钩子:由事件触发的函数 分类: 客户端钩子:由诸如提交和合并这样的操作触发 服务器端钩子:由诸如接收被推送的提交这样的联网操作触发 安装: a.钩子都被存储在 .git 目录下的 hooks ...
- 001-OSI七层模型,TCP/IP五层模型
一.概述 OSI(Open System Interconnection)参考模型是国际标准化组织(ISO)制定的一个用于计算机或通信系统间互联的标准体系,一般称为OSI参考模型或七层模型. OSI/ ...
- CoreThink主题开发(九)使用H-ui开发博客主题之用户个人主页
感谢H-ui.感谢CoreThink! 效果图: 这里使用table布局 /Theme/Blog/User/Index/home.html <extend name="$_home_ ...
- 【python】判断字符串以什么开头或结尾
项目中用到python判断一个字符串是否以某个字符串结尾,比如,筛选一个目录下所有以.mp4结尾的文件. >>> item = "demo.mp4" >&g ...
- SpringMVC:学习笔记(6)——转换器和格式化
转换器和格式化 说明 SpringMVC的数据绑定并非没有限制,有案例表明,在SpringMVC如何正确绑定数据方面是杂乱无章的,比如在处理日期映射到Date对象上. 为了能够让SpringMVC进行 ...
- 流量分析系统---flume(测试flume+kafka)
1.在flume官方网站下载最新的flume wget http://124.205.69.169/files/A1540000011ED5DB/mirror.bit.edu.cn/apach ...
- Python 4 函数的参数,内置函数,装饰器,生成器,迭代器,
一.函数的参数: 1.位置参数:调用函数时根据函数定义的参数位置来传递参数. 2.关键字参数:用于函数调用,通过“键-值”形式加以指定.可以让函数更加清晰.容易使用,同时也清除了参数的顺序需求. 3. ...
- 设计模式之单例模式--instance
<?php header('Content-Type:text/html;charest=utf-8'); /** * 设计模式之单例模式 * $_instance必须声明为静态的私有变量 * ...