- PowerShell 激活 activate 命令切换Python虚拟环境
南七小僧
网站开发AI技术产品经理人工智能python开发语言
使用如下命令可以创建新的conda环境:condacreate-nenvname然后使用如下命令就可以激活虚拟环境:#winactivateenvname#linuxsourceactivateenvname但是在日常使用过程中,发现存在一个问题,windows激活虚拟环境的命令在cmd中可以正常使用,但是在powershell中使用就存在一些问题,总之无法正常运行.使用如下方法解决:1.安装如下
- ubuntu18.04安装nvm管理本机node和npm
爱学习的狮王
Linux/Shellnodenpm前端node.jsnvm
ubuntu18.04安装nvm管理本机node和npmnvm的使用方法1.安装nvm2.加载nvm3.安装执行版本4.设置默认版本(可选)5.检查:6.将配置加入到shell配置文件中(默认已经加入)如果系统全局的Node.js存在,但被nvm覆盖了,可以通过禁用或卸载nvm恢复到系统版本。1.取消nvm的版本管理2.然后从shell配置文件(例如~/.bashrc,~/.zshrc或~/.ba
- Dest1ny漏洞库:用友 U8-CRM 系统 ajaxgetborrowdata.php 存在 SQL 注入漏洞
Dest1ny(沉淀版)
phpsql开发语言
用友U8-CRM系统ajaxgetborrowdata.php存在SQL注入漏洞,文件多个方法存在SQL注入漏洞,未经身份验证的攻击者通过漏洞执行任意SQL语句,调用xp_cmdshell写入后门文件,执行任意代码,从而获取到服务器权限。hunterapp.name="用友CRM"fofatitle="用友U8CRM"pocPOST/borrowout/ajaxgetborrowdata.php?
- .NET MAUI进行UDP通信(二)
聿琴丶
MAUI.netudp网络协议
上篇文章有写过一个简单的demo,本次对项目进行进一步的扩展,添加tabbar功能。1.修改AppShell.xaml文件,如下所示:-->-->1).将MainPage注释掉2).添加tabbar功能3).第一个ShellConten的路由设置为Mine文件,注意到ContentTemplate="{DataTemplateminePage:Mine}",当前不是local,是因为我们引用了命名
- Window平台Git-Bash的主题配置
SpeculateCat
CodingNotelinuxcmdgitgit-bash
通过这篇文章,可以了解到:为什么要使用Git-Bash,以及Git-Bash的优点Git-Bash的外观主题配置Git-Bash的优点在开发的过程中,我们可能需要使用大量的命令行工具,或者远程连接到服务器进行操作。然而,由于Window自带的CMD和PowerShell都不太好用,而且在Window下的命令又与Linux和MacOS的命令不太一样,如果需要经常跨平台操作,学习Window的命令行命
- vscode通过ssh连接github仓库(git+ssh+github+vscode详细步骤)
en你好
vscodesshgithubgit
vscode如何通过ssh连接github仓库(详细步骤)文章目录vscode如何通过ssh连接github仓库(详细步骤)前言1.ssh2.github一、安装Git二、获取ssh密钥三、在github配置ssh密钥四、在vscode上添加远程仓库总结前言首先我们先来了解一下什么是ssh和github1.sshSSH(SecureShell)是一种网络协议,用于在不安全的网络中安全地传输数据和执
- shell sed多行文本处理
刘静飞
shell原创shellsed多文本处理
3.sed多行文本处理问题本案例要求使用sed工具来完成下列任务操作:修改主机名配置文件修改hosts文件,添加两条映射记录:192.168.4.5与svr5.tarena.com、svr5,还有119.75.217.56与www.baidu.com方案sed工具的多行文本处理操作:i:在指定的行之前插入文本a:在指定的行之后追加文本c:替换指定的行步骤实现此案例需要按照如下步骤进行。步骤一
- /opt安装软件,就可以使用man xx命令是为什么
翻滚吧键盘
linux运维服务器
引言以neovim的安装过程为例下载curl-LOhttps://github.com/neovim/neovim/releases/latest/download/nvim-linux64.tar.gzsudorm-rf/opt/nvimsudotar-C/opt-xzfnvim-linux64.tar.gz添加环境变量前,是无法使用mannvim的Thenaddthistoyourshellc
- Shell练习(一)
Deutsch.
shellshLinux
使用Shell脚本,检测/tmp/size.log文件,若存在,则显示它的内容;若不存在,则创建文件将创建时间写入#vim1.shif[-e/tmp/size.log]thenecho"文件已存在,内容如下:"echo`cat/tmp/size.log`elseecho"文件不存在,已将当前时间写入文件"echo`date+"%F%T"`>/tmp/size.logfi效果验证使用Shell脚本,
- 渗透测试 - webshell jsp一句话大马 && 蚁剑连接
浩浩测试一下
OWASPTop漏洞web渗透java开发语言网络安全安全系统安全web安全
目录大木马webshell大马连接大木马<%@pageimport="javax.imageio.*"%&g
- ansible 指定用户名并免密批量执行
HOPE YOU WELL
三藏sshlinux服务器
由于root账户出现故障,导致ansible无法正常执行ssh-agent/bin/bash和ssh-add/root/.ssh/id_sra命令,所以采用命令的方式完成当即需要完成的工作ansible-i清单文件清单-mshell-a"bash/root/worker/u-worker-s.shrefund"-u用户名--key-file/home/私钥位置-b--become-method=s
- Python 的 subprocess 介绍及如何使用
LavenLiu
pythonsubprocess
一、引言在Python中,subprocess模块为程序员提供了与操作系统命令进行交互的桥梁。无论是执行简单的shell命令,还是管理复杂的外部进程,subprocess都能很好地完成任务。通过subprocess,Python脚本可以启动新的应用程序,与其输入/输出/错误管道建立连接,并获取其返回值,这对于实现自动化任务和系统集成至关重要。subprocess模块的出现,极大地扩展了Python
- ubuntu ssh连接linux系统,在Ubuntu 18.04系统中启用SSH登录的方法
乔隰
ubuntussh连接linux系统
简介SecureShell(SSH)是Linux系统管理中的经常要用到的一种远程访问技术。在Ubuntu18.04系统仓库中,已经收录了同为开源的OpenSSH,我们可以用它来为系统开启SSH访问功能。在Ubuntu18.04系统中启用SSH登录的具体方法一、打开终端,输入以下命令安装OpenSSH服务:sudoapt-getinstallopenssh-server二、修改“/etc/ssh/s
- 使用shell脚本修改linux静态网络IP、网关和hosts文件
二十一克阳光!
网络linuxtcp/ip
#!/bin/bash#检查参数数量if["$#"-ne2];thenecho"Usage:$0"exit1fi#获取参数NEW_IPADDR=$1#提取新的子网部分(前24位)#IFS='.'read-r-aip_parts<<<"$NEW_IPADDR":使用点号.作为分隔符,将NEW_IPADDR分割成数组ip_parts。#NEW_SUBNET="${ip_parts[0]}.${ip_p
- Python Paramiko模块-SSH远程连接服务器操作
上海-悠悠
Pythonpython服务器
前言Paramiko是Python语言的一个SSH客户端。可以远程连接Linux服务器,通过python对Linux进行操作,可以实现进行对远程服务器进行下载和上传文件操作。简介Paramiko的特点:支持SSHv2协议和SFTP协议支持密码和密钥认证提供高级的加密和身份验证选项可以执行远程命令和传输文件支持多种认证方式,如用户名密码、公钥、密钥等允许通过Shell、SFTP或SCP等通道访问远程
- 使用云服务器+xshell运行代码
biu~!
软件相关服务器ssh
使用云服务器+xshell运行代码国内租用云服务平台,推荐Autodl.价格便宜,体验感好,可以无卡开机,省下不少钱。链接:link.接着,租用服务器。计费方式选择按量计费,就可以只开机才开始计费。选择自己需要的镜像,可以省去很多配置环境需要的时间。租用完成后,可以在控制台——我的实例处找到自己创建的实例。选择开机,即可获得登录指令。(在上传代码,部署环境阶段可以选择更多——无卡模式开机)粘贴登录
- AD域管理PowerShell常用命令总结
运维
一、GET-ADUser在AD域管理中的应用总结GET-ADUser:获取指定的用户对象或进行搜索,以获取多个用户对象。1.获取dc中所有的用户,导出为csv格式并保存到指定的路径下举例:Get-ADUser-filter*|export-csv保存路径-Encodingutf82.获取某一用户的所有AD属性,导出为csv格式并保存到指定的路径下.举例:Get-ADUser-Identity用户名
- 修改hdfs路径权限
chimchim66
hdfshadoop大数据
目录一、背景二、定位问题三、解决一、背景执行insertoverwritetable报错报错内容如下:二、定位问题看报错日志获取到2个信息,一个网络问题,一个是文件权限问题。网络问题重试还是失败,应该不是因为这个,所以要处理文件的权限。三、解决shell执行以下命令,${hdfs_path}替换成目标表的文件路径/usr/local/service/hadoop/bin/hdfsdfs-chmod
- pycharm 无法打开本地终端
cc曹
pycharmidepython
Shellpath改为C:\Windows\System32\cmd.exe重启即可解决问题记得重启完了新加一个local
- 解决pycharm中终端无法使用的问题
才高八斗曹子建
python
如图如果你的终端是这样子的只需要接下来几个步骤就可以使用终端:一.打开设置、二.然后在设置里面找到工具里面的终端将shell路径改成额如图所示的路径即可三.最后就可以正常使用终端了
- Windows程序设计4:API函数URLDownloadToFile和ShellExecuteEx
智能与优化
C++进阶windowsc++开发语言
文章目录前言一、URLDownloadToFile1.URLDownloadToFile简介2.URLDownloadToFile使用二、ShellExecuteEx1.ShellExecuteEx简介2.ShellExecuteEx使用总结前言Windows程序设计4:API函数URLDownloadToFile和ShellExecuteEx。一、URLDownloadToFile大家平时经常下
- 最新搭建彩虹易支付平台
顺哥博客
运维服务器程序员创富创业创新
1、购买服务器并解析域名Cloudflare域名解析:【点击进入】2、SSH连接服务器并放行端口SSH连接工具Finalshell:【点击进入】放行端口(根据实际情况来放行,大部分的云平台都可以在控制台操作,Vultr需要单独放行):ufwallow需要放行的端口Copy2、宝塔面板国际版官网:【点击进入】一键安装脚本(下面的命令适合Debian系统,其他系统的一键安装命令可查看官网):wget-
- shell脚本
kyle~
Linuxlinux脚本
Shell内容讲解一、Shell脚本基础概念什么是Shell脚本?Shell脚本是一个包含一系列Shell命令的文本文件,用于自动化执行任务(如文件操作、程序调用、系统管理等)。Shell类型bash(Bourne-AgainShell):Linux系统默认Shell。sh(BourneShell):更早期的标准Shell。zsh、ksh等:其他变体,语法略有差异。推荐使用bash,本教程以bas
- SHELL编程基础
SAFE20242034
#四SHELLpythonchrome开发语言
SHELLShell编程语法总结Shell编程基础语法一、变量1.1Shell变量名1.2使用Shell变量1.3只读变量1.4删除变量二、字符串2.1定义字符串2.2获取字符串长度2.3提取子字符串2.4查找子字符串三、运算符3.1算术运算符3.2关系运算符3.2.1数字关系3.2.2文件权限四、流程控制4.1if判定4.2case语句4.3for循环4.4while循环五、函数5.1函数基础5
- GCC编译过程,静态库与动态库
南菠湾
开发语言c语言
一、Linux下GCC编译器编译过程序号过程名过程代码1预处理preprocessing将.c中的头文件,宏定义展开及替换,生成.i文件gcc-E-ohello.ihello.c2编译compilation将预处理之后的.i文件生成汇编代码.s文件gcc-S-ohello.shello.i3汇编assembly把.s汇编文件生成.o目标文件gcc-c-ohello.ohello.s4链接linki
- python可执行程序必须以管理员_Python实现管理员权限运行CMD指令
weixin_39977488
一、subprocess.PopenPython执行cmd指令属于外部调用,subprocess.Popen方法即可,实现如下:#!/usr/bin/python3#coding:utf-8importsubprocessdefcommand(cmd,timeout=1800000):try:sp=subprocess.Popen(cmd,shell=True,stdout=subprocess.
- Python 获取管理员权限
一台电脑可以让你哭吗
Pythonpython开发语言
方法一:使用ctypes库调用系统APIPython中的【ctypes】库允许我们调用操作系统的动态链接库函数,来获取管理员权限。importctypesimportsysdefis_admin():try:returnctypes.windll.shell32.IsUserAnAdmin()except:returnFalseifnotis_admin():ctypes.windll.shell
- 安装 zsh Bash
ambition_forever
LNGX
//安装oh-my-zsh之前需要安装zshshell切换bashchsh-s/bin/bash切换zshchsh-s/bin/zsh1、查看系统当前的shellecho$SHELL返回结果如下:/bin/bashPS.默认的shell一般都是bash2、查看bin下是否有zsh包cat/etc/shells返回结果如下:/bin/sh/bin/bash/sbin/nologin/bin/dash
- 从bash 换到 zsh
卜夋
Debian/Linuxshellzsh
看见zsh漂亮的主题和强大的功能,准备了解一波zsh。使用zsh首先的安装zsh,本文所说只针对debian系,其它的可作为参考。查看系统当前安装的shellcat/etc/shells可以看出我的shell变量是上面那些,我已经安装了zsh,如果没有安装的话,执行sudoaptinstallzsh切换zshsudousermod-s/bin/zshusername//chsh-s/usr/bin
- python无法启动此程序因为_(python shell怎么用)为啥我按照python安装教程,总说无法启动此程序,因为计算机中丢失?...
weixin_39540023
python无法启动此程序因为
python3.8遍历整个列表?你打印的是colorprint(color)不对应该是magician为啥我按照python安装教程,总说无法启动此程序,因为计算机中丢失?这是你windows操作文件丢失的,和python无关。首先去网上搜索下载api-ms-win-crt-process-l1-1-0.dll文件载完毕后,把dll文件放到C:\Windows\System32下即可。如果下载的d
- ASM系列六 利用TreeApi 添加和移除类成员
lijingyao8206
jvm动态代理ASM字节码技术TreeAPI
同生成的做法一样,添加和移除类成员只要去修改fields和methods中的元素即可。这里我们拿一个简单的类做例子,下面这个Task类,我们来移除isNeedRemove方法,并且添加一个int 类型的addedField属性。
package asm.core;
/**
* Created by yunshen.ljy on 2015/6/
- Springmvc-权限设计
bee1314
springWebjsp
万丈高楼平地起。
权限管理对于管理系统而言已经是标配中的标配了吧,对于我等俗人更是不能免俗。同时就目前的项目状况而言,我们还不需要那么高大上的开源的解决方案,如Spring Security,Shiro。小伙伴一致决定我们还是从基本的功能迭代起来吧。
目标:
1.实现权限的管理(CRUD)
2.实现部门管理 (CRUD)
3.实现人员的管理 (CRUD)
4.实现部门和权限
- 算法竞赛入门经典(第二版)第2章习题
CrazyMizzz
c算法
2.4.1 输出技巧
#include <stdio.h>
int
main()
{
int i, n;
scanf("%d", &n);
for (i = 1; i <= n; i++)
printf("%d\n", i);
return 0;
}
习题2-2 水仙花数(daffodil
- struts2中jsp自动跳转到Action
麦田的设计者
jspwebxmlstruts2自动跳转
1、在struts2的开发中,经常需要用户点击网页后就直接跳转到一个Action,执行Action里面的方法,利用mvc分层思想执行相应操作在界面上得到动态数据。毕竟用户不可能在地址栏里输入一个Action(不是专业人士)
2、<jsp:forward page="xxx.action" /> ,这个标签可以实现跳转,page的路径是相对地址,不同与jsp和j
- php 操作webservice实例
IT独行者
PHPwebservice
首先大家要简单了解了何谓webservice,接下来就做两个非常简单的例子,webservice还是逃不开server端与client端。我测试的环境为:apache2.2.11 php5.2.10做这个测试之前,要确认你的php配置文件中已经将soap扩展打开,即extension=php_soap.dll;
OK 现在我们来体验webservice
//server端 serve
- Windows下使用Vagrant安装linux系统
_wy_
windowsvagrant
准备工作:
下载安装 VirtualBox :https://www.virtualbox.org/
下载安装 Vagrant :http://www.vagrantup.com/
下载需要使用的 box :
官方提供的范例:http://files.vagrantup.com/precise32.box
还可以在 http://www.vagrantbox.es/
- 更改linux的文件拥有者及用户组(chown和chgrp)
无量
clinuxchgrpchown
本文(转)
http://blog.163.com/yanenshun@126/blog/static/128388169201203011157308/
http://ydlmlh.iteye.com/blog/1435157
一、基本使用:
使用chown命令可以修改文件或目录所属的用户:
命令
- linux下抓包工具
矮蛋蛋
linux
原文地址:
http://blog.chinaunix.net/uid-23670869-id-2610683.html
tcpdump -nn -vv -X udp port 8888
上面命令是抓取udp包、端口为8888
netstat -tln 命令是用来查看linux的端口使用情况
13 . 列出所有的网络连接
lsof -i
14. 列出所有tcp 网络连接信息
l
- 我觉得mybatis是垃圾!:“每一个用mybatis的男纸,你伤不起”
alafqq
mybatis
最近看了
每一个用mybatis的男纸,你伤不起
原文地址 :http://www.iteye.com/topic/1073938
发表一下个人看法。欢迎大神拍砖;
个人一直使用的是Ibatis框架,公司对其进行过小小的改良;
最近换了公司,要使用新的框架。听说mybatis不错;就对其进行了部分的研究;
发现多了一个mapper层;个人感觉就是个dao;
- 解决java数据交换之谜
百合不是茶
数据交换
交换两个数字的方法有以下三种 ,其中第一种最常用
/*
输出最小的一个数
*/
public class jiaohuan1 {
public static void main(String[] args) {
int a =4;
int b = 3;
if(a<b){
// 第一种交换方式
int tmep =
- 渐变显示
bijian1013
JavaScript
<style type="text/css">
#wxf {
FILTER: progid:DXImageTransform.Microsoft.Gradient(GradientType=0, StartColorStr=#ffffff, EndColorStr=#97FF98);
height: 25px;
}
</style>
- 探索JUnit4扩展:断言语法assertThat
bijian1013
java单元测试assertThat
一.概述
JUnit 设计的目的就是有效地抓住编程人员写代码的意图,然后快速检查他们的代码是否与他们的意图相匹配。 JUnit 发展至今,版本不停的翻新,但是所有版本都一致致力于解决一个问题,那就是如何发现编程人员的代码意图,并且如何使得编程人员更加容易地表达他们的代码意图。JUnit 4.4 也是为了如何能够
- 【Gson三】Gson解析{"data":{"IM":["MSN","QQ","Gtalk"]}}
bit1129
gson
如何把如下简单的JSON字符串反序列化为Java的POJO对象?
{"data":{"IM":["MSN","QQ","Gtalk"]}}
下面的POJO类Model无法完成正确的解析:
import com.google.gson.Gson;
- 【Kafka九】Kafka High Level API vs. Low Level API
bit1129
kafka
1. Kafka提供了两种Consumer API
High Level Consumer API
Low Level Consumer API(Kafka诡异的称之为Simple Consumer API,实际上非常复杂)
在选用哪种Consumer API时,首先要弄清楚这两种API的工作原理,能做什么不能做什么,能做的话怎么做的以及用的时候,有哪些可能的问题
- 在nginx中集成lua脚本:添加自定义Http头,封IP等
ronin47
nginx lua
Lua是一个可以嵌入到Nginx配置文件中的动态脚本语言,从而可以在Nginx请求处理的任何阶段执行各种Lua代码。刚开始我们只是用Lua 把请求路由到后端服务器,但是它对我们架构的作用超出了我们的预期。下面就讲讲我们所做的工作。 强制搜索引擎只索引mixlr.com
Google把子域名当作完全独立的网站,我们不希望爬虫抓取子域名的页面,降低我们的Page rank。
location /{
- java-归并排序
bylijinnan
java
import java.util.Arrays;
public class MergeSort {
public static void main(String[] args) {
int[] a={20,1,3,8,5,9,4,25};
mergeSort(a,0,a.length-1);
System.out.println(Arrays.to
- Netty源码学习-CompositeChannelBuffer
bylijinnan
javanetty
CompositeChannelBuffer体现了Netty的“Transparent Zero Copy”
查看API(
http://docs.jboss.org/netty/3.2/api/org/jboss/netty/buffer/package-summary.html#package_description)
可以看到,所谓“Transparent Zero Copy”是通
- Android中给Activity添加返回键
hotsunshine
Activity
// this need android:minSdkVersion="11"
getActionBar().setDisplayHomeAsUpEnabled(true);
@Override
public boolean onOptionsItemSelected(MenuItem item) {
- 静态页面传参
ctrain
静态
$(document).ready(function () {
var request = {
QueryString :
function (val) {
var uri = window.location.search;
var re = new RegExp("" + val + "=([^&?]*)", &
- Windows中查找某个目录下的所有文件中包含某个字符串的命令
daizj
windows查找某个目录下的所有文件包含某个字符串
findstr可以完成这个工作。
[html]
view plain
copy
>findstr /s /i "string" *.*
上面的命令表示,当前目录以及当前目录的所有子目录下的所有文件中查找"string&qu
- 改善程序代码质量的一些技巧
dcj3sjt126com
编程PHP重构
有很多理由都能说明为什么我们应该写出清晰、可读性好的程序。最重要的一点,程序你只写一次,但以后会无数次的阅读。当你第二天回头来看你的代码 时,你就要开始阅读它了。当你把代码拿给其他人看时,他必须阅读你的代码。因此,在编写时多花一点时间,你会在阅读它时节省大量的时间。让我们看一些基本的编程技巧: 尽量保持方法简短 尽管很多人都遵
- SharedPreferences对数据的存储
dcj3sjt126com
SharedPreferences简介: &nbs
- linux复习笔记之bash shell (2) bash基础
eksliang
bashbash shell
转载请出自出处:
http://eksliang.iteye.com/blog/2104329
1.影响显示结果的语系变量(locale)
1.1locale这个命令就是查看当前系统支持多少种语系,命令使用如下:
[root@localhost shell]# locale
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
- Android零碎知识总结
gqdy365
android
1、CopyOnWriteArrayList add(E) 和remove(int index)都是对新的数组进行修改和新增。所以在多线程操作时不会出现java.util.ConcurrentModificationException错误。
所以最后得出结论:CopyOnWriteArrayList适合使用在读操作远远大于写操作的场景里,比如缓存。发生修改时候做copy,新老版本分离,保证读的高
- HoverTree.Model.ArticleSelect类的作用
hvt
Web.netC#hovertreeasp.net
ArticleSelect类在命名空间HoverTree.Model中可以认为是文章查询条件类,用于存放查询文章时的条件,例如HvtId就是文章的id。HvtIsShow就是文章的显示属性,当为-1是,该条件不产生作用,当为0时,查询不公开显示的文章,当为1时查询公开显示的文章。HvtIsHome则为是否在首页显示。HoverTree系统源码完全开放,开发环境为Visual Studio 2013
- PHP 判断是否使用代理 PHP Proxy Detector
天梯梦
proxy
1. php 类
I found this class looking for something else actually but I remembered I needed some while ago something similar and I never found one. I'm sure it will help a lot of developers who try to
- apache的math库中的回归——regression(翻译)
lvdccyb
Mathapache
这个Math库,虽然不向weka那样专业的ML库,但是用户友好,易用。
多元线性回归,协方差和相关性(皮尔逊和斯皮尔曼),分布测试(假设检验,t,卡方,G),统计。
数学库中还包含,Cholesky,LU,SVD,QR,特征根分解,真不错。
基本覆盖了:线代,统计,矩阵,
最优化理论
曲线拟合
常微分方程
遗传算法(GA),
还有3维的运算。。。
- 基础数据结构和算法十三:Undirected Graphs (2)
sunwinner
Algorithm
Design pattern for graph processing.
Since we consider a large number of graph-processing algorithms, our initial design goal is to decouple our implementations from the graph representation
- 云计算平台最重要的五项技术
sumapp
云计算云平台智城云
云计算平台最重要的五项技术
1、云服务器
云服务器提供简单高效,处理能力可弹性伸缩的计算服务,支持国内领先的云计算技术和大规模分布存储技术,使您的系统更稳定、数据更安全、传输更快速、部署更灵活。
特性
机型丰富
通过高性能服务器虚拟化为云服务器,提供丰富配置类型虚拟机,极大简化数据存储、数据库搭建、web服务器搭建等工作;
仅需要几分钟,根据CP
- 《京东技术解密》有奖试读获奖名单公布
ITeye管理员
活动
ITeye携手博文视点举办的12月技术图书有奖试读活动已圆满结束,非常感谢广大用户对本次活动的关注与参与。
12月试读活动回顾:
http://webmaster.iteye.com/blog/2164754
本次技术图书试读活动获奖名单及相应作品如下:
一等奖(两名)
Microhardest:http://microhardest.ite