工具原料:电脑+win10
Win10版Linux Bash命令使用方法如下:
1、先在设置→更新和安全→针对开发人员中选择“开发人员模式”,点击后会下载“开发人员模式包”,如下图
但有时这个包会下载不成功,出现如下图提示
2、此时也无需担心,上一步如果不顺利,可以在后续步骤中弥补。此时进入控制面板→程序和功能→启用或关闭Windows功能,勾选“适用于Linux的Windows子系统(Beta)”,点击“确定”后安装,如下图
3、安装后需要重启,然后打开命令提示符,执行如下命令即可开启(可直接在管理员模式下输入Bash命令开启):
C:windowssystem32bashexe
4、如果第一步安装不顺利,此时可能就需要从商店下载所需组件,顺利与否还得看网络状况,IT之家测试中就遇到如下“鬼畜”情况:
5、由上图可见,下载安装的过程中需要用户创建Unix账户,因此要设定账户密码,在输入密码的过程中,密码文字不可见,需要输入两遍,你心里要有数,设置成功后就可以使用了
6、功能命令可用bash --help来查询,在使用的话要在前面加上“bash”,例如:
bash --debug
bash --init-file
bash --version
7、如果要运行Linux命令,可采用如下格式(注意 c 和前引号间的空格,如上图):
bash -c “linux命令”
例如:
bash -c “echo Hello from IThome”
bash -c “ls /mnt/c”
bash -c “lsb_release -a”
查看win10系统版本,并更新到最新版本。设置->更新和安全->windows更新(左侧)。
开启win10开发者模式。
开启windows功能。按win+x键->选择控制面板(或者直接打开控制面板)->启用或关闭windows功能->适用于Linux的windows子系统。选中后点确定。
4
重启计算机。然后点击左下角 开始->windows 系统->命令提示符输入bash,然后enter,界面提示你是否下载linux系统,输入Y 然后enter,这个需要一会,下载完成以后会自动安装,安装完成需要你输入linux账号和密码,下图有示。(因为我的已经安装完成,忘记截图,后面俩张图示从网上找的,所以和我的截图不太搭,如果侵权请联系我删除。)
本质区别是这样的,linux下用的是伯克利socket,windows底下用的WinSocket
两者其实是大同小异的,不同的地方在以下几点:
1 头文件不同,在linux下用到的关键头文件<sys/socketh>
windows下用到的是 <Winsock2h>
2 socket的初始化不一样,在windows下要有一个WSAStartup,而linux 下没有。
3 具体的细节不一样,linux下的c和windows下的c的一些语法有些出入,你自己找找。
下面我把windows下的socket通讯的最基本的结构给你,你对照着修改就可以了,一下的程序我调试了一下,编译过了。
客户端
#include <Winsock2h>
#include <stdioh>
void main()
{
WORD wVersionRequested;
WSADATA wsaData;
int err;
wVersionRequested = MAKEWORD( 1, 1 );
err = WSAStartup( wVersionRequested, &wsaData );
if ( err != 0 ) {
return;
}
if ( LOBYTE( wsaDatawVersion ) != 1 ||
HIBYTE( wsaDatawVersion ) != 1 ) {
WSACleanup( );
return;
}
SOCKET sockClient=socket(AF_INET,SOCK_STREAM,0);
SOCKADDR_IN addrSrv;
addrSrvsin_addrS_unS_addr=inet_addr("127001");
addrSrvsin_family=AF_INET;
addrSrvsin_port=htons(6000);
connect(sockClient,(SOCKADDR)&addrSrv,sizeof(SOCKADDR));
char recvBuf[100];
recv(sockClient,recvBuf,100,0);
printf("%s\n",recvBuf);
send(sockClient,"This is lisi",strlen("This is lisi")+1,0);
closesocket(sockClient);
WSACleanup();
}
服务器端
#include <Winsock2h>
#include <stdioh>
void main()
{
WORD wVersionRequested;
WSADATA wsaData;
int err;
wVersionRequested = MAKEWORD( 1, 1 );
err = WSAStartup( wVersionRequested, &wsaData );
if ( err != 0 ) {
return;
}
if ( LOBYTE( wsaDatawVersion ) != 1 ||
HIBYTE( wsaDatawVersion ) != 1 ) {
WSACleanup( );
return;
}
SOCKET sockSrv=socket(AF_INET,SOCK_STREAM,0);
SOCKADDR_IN addrSrv;
addrSrvsin_addrS_unS_addr=htonl(INADDR_ANY);
addrSrvsin_family=AF_INET;
addrSrvsin_port=htons(6000);
bind(sockSrv,(SOCKADDR)&addrSrv,sizeof(SOCKADDR));
listen(sockSrv,5);
SOCKADDR_IN addrClient;
int len=sizeof(SOCKADDR);
while(1)
{
SOCKET sockConn=accept(sockSrv,(SOCKADDR)&addrClient,&len);
char sendBuf[100];
sprintf(sendBuf,"来自服务器端",
inet_ntoa(addrClientsin_addr));
send(sockConn,sendBuf,strlen(sendBuf)+1,0);
char recvBuf[100];
recv(sockConn,recvBuf,100,0);
printf("%s\n",recvBuf);
closesocket(sockConn);
}
}
1 Cygwin
>
你好楼主,Linux和Windows是完全不相同的系统内核,Windows的软件是无法在Linux系统里安装和执行,如果想把Windows的软件在Linux里安装,可能需要一个wine软件,这是一个虚拟化的过程,但是Linux系统速度很快,比windows好,但是安装软件没有Windows简便,它需要命令!
希望对你有帮助!
一、你可以借助vmware安装虚拟机,然后使用source insight进行编码
1. 在Windows下建立文件夹如:D:\LinuxShare
2. 打开虚拟机
3.双击 Shared Folder
选中 Always enabled 然后 点击Add 添加要共享的文件夹
4. 运行虚拟机后 在Linux系统下 /mnt/hgfs目录下即可看到 LinuxShare目录,将代码拷入Windows系统下的D:\LinuxShare,用source insight建立工程进行编辑,之后再用Linux终端make以及gdb
二、你也可以使用vc6来做IDE
在windows平台上,当然微软自家的IDE是最好的,你不用担心,代码提示等问题,可以直接把Linux需要的SDK库,设置好,使用visual assit来进行编码。 这个也是很效率的。VC6我已经打包!
先确保你的c程序没有调用win下专有的api,比如win32api或net等,
如果有,就需要另写接口层。最好能只调用posix库或跨平台的库,或完全原创的算法库。
c程序满足和win专有接口能脱离直接关系,就能在linux下编译。
以上就是关于怎样在Win10中使用Linux命令全部的内容,包括:怎样在Win10中使用Linux命令、win10系统怎么安装运行linux系统、linux下的程序如何在windows下运行等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)