- Linux学习笔记--shell脚本(二)
运维派C
shell脚本学习Linuxshell脚本
20.1什么是shell脚本shell脚本并不能作为正式的编程语言,因为它是在linux的shell中运行的,所以称为shell脚本。事实上,shell脚本就是一些命令的集合。假如完成某个需求需要一口气输入10条命令,对于简单的命令,我们可以直接在shell窗口中输入,但如果是比较长且复杂的命令,一次一次敲就会显得很麻烦。我们可以把这10条命令都记录到一个文档中,然后去调用文档中的命令,这样就能一
- 嵌入式Linux 系统组成
mx_jun
linux运维服务器U-bootBIOSlinux内核嵌入式
三种系统组成图嵌入式Linux系统和PC完整的操作系统的对比如下://可以看到我们嵌入式arm上的u-boot同时替代了BIOS和grub2(bootmgr)的功能,下面我们来进行一些详细的介绍1.BIOS和UEFI的作用:a.进行硬件自检,检测内存,CPU,显卡,硬盘等设备的状态和配置。b.设置启动顺序,选择从哪个设备加载引导程序,如硬盘,U盘等。c.加载引导程序,如bootmgr,grub2等
- 安装centos7后,启动引导没有Windows
HHHU丶
安装centos7后Windows启动引导消失安装的电脑牌子是联想,安装过程没有什么问题,但在重启后发现原先的Windows7的引导没有了。原因:Windows的引导使用的是NTFS分区,安装centos7后会将mbr(mainbootrecord)改写为grub2。默认的centos7无法识别Windows的分区,所以启动程序中没有Windows。个人解决的步骤:刚安装的centos7安装源的时
- Linux学习笔记 - 3
Norvyn_7
Linux学习linux学习笔记
Linux学习笔记-3本篇将介绍which、find、grep、echo、less、tail以及管道符|的使用。1.查看命令的程序文件1.1which查看命令的程序文件语法:which[命令]用于查找某个命令的程序文件路径。示例:whichcd会显示cd命令的实际路径。2.查找文件2.1find查找文件语法:find[查找路径][-name]["要查找的文件名"]-name:按文件名查找,支持通配
- Linux学习笔记 - 6
Norvyn_7
Linux学习linux学习笔记
Linux学习笔记-6本篇将介绍网络配置、传输工具、端口管理、进程管理、主机监控及环境变量相关命令。1.IP地址和主机名1.1IP地址作用:用于计算机之间的网络通信。IPv4格式:a.b.c.d(每个数字范围0~255),例如192.168.1.1。查看本机IP:ifconfig#需先安装net-toolsipaddr#无需安装,推荐使用安装ifconfig:CentOS:yum-yinstall
- 【Linux探索学习】第二十九弹——线程概念:Linux线程的基本概念与线程控制详解
GG Bond.ฺ
Linux探索学习linux学习算法运维
Linux学习笔记:https://blog.csdn.net/2301_80220607/category_12805278.html?spm=1001.2014.3001.5482前言:在现代操作系统中,线程是程序执行流的最小单元。与进程相比,线程更加轻量级,创建和销毁的开销更小,且线程之间可以共享内存空间,因此在多任务处理、并发编程中,线程的使用非常广泛。Linux作为一个多用户、多任务的操
- Linux学习笔记15---定时器按键消抖实验
H2Z20Str
Linux学习笔记
在之前的实验中都用到了按键,用到按键就要处理因为机械结构带来的按键抖动问题,也就是按键消抖。前面的实验中都是直接使用了延时函数来实现消抖,因为简单,但是直接用延时函数来实现消抖会浪费CPU性能,因为在延时函数里面CPU什么都做不了。如果按键使用中断的话更不能在中断里面使用延时函数,因为中断服务函数要快进快出!本章我们学习如何使用定时器来实现按键消抖,使用定时器既可以实现按键消抖,而且也不会浪费CP
- 什么是LILO?思维导图 代码示例(java 架构)
用心去追梦
java架构python
什么是LILO?LILO(LinuxLoader)是早期Linux系统中常用的引导加载程序之一,用于启动操作系统。它在计算机启动时运行,负责将内核加载到内存中,并初始化系统以开始操作系统的执行。尽管现在许多系统已经转向使用GRUB或GRUB2作为默认的引导加载程序,但在某些老旧系统或特定场景下,LILO仍然被使用。LILO的特点历史与地位是最早的Linux引导加载程序之一。曾经广泛应用于各种Lin
- Linux学习笔记-正点原子阿尔法开发板V2.4学习记录
@bjtuhbxy_17813263
学习笔记
目录1.安装编译器2.imdownload烧录问题1.安装编译器树莓派3B+做服务器,安装GCC编译器指令:aptinstallgcc-arm-linux-gnueabihf参考链接:树莓派安装ubuntu后怎样编译imx6ul板子的程序-OpenEdv-开源电子网2.imdownload烧录问题树莓派3B+搭建的Ubuntu编译环境,在使用imdownload烧录时,提示-bash:./imxd
- grub 2.0安全启动校验镜像逻辑
inquisiter
linux数据库运维
grub2.0安全启动校验镜像逻辑grub中会使用验证器来校验镜像的正确性。在GNUGRUB中,一旦你注册了你的验证器,它将自动用于所有打开的文件。这是一个基本的步骤来使用你的验证器:注册验证器:首先,你需要使用grub_verifier_register函数来注册你的验证器。这通常在你的模块的初始化函数中完成。打开文件:当你打开一个文件时,GRUB会自动调用你的验证器。这是通过grub_file
- Linux学习笔记(复习版day008)
ccnnlxc
Liux学习复习笔记linux学习笔记
1.僵尸进程僵尸进程(ZombieProcess)是指那些已经终止(即完成执行)的进程,但其父进程尚未读取其退出状态信息的进程。简单来说,僵尸进程的生命周期已经结束,但它的进程描述符仍然存在于系统中,以便父进程能够获取其退出状态。处理:1.top命令查询是否有僵尸进程,此处1zombie表示有一个僵尸进程2.ps-aux|grepZ查询僵尸进程的pid,STAT状态为Z+的即为僵尸进程。3.pst
- 【linux性能优化】系统启动参数
温柔如酒
linux性能优化linux数据库运维
grubby-c/boot/grub2/grub.cfg--update-kernel=ALL--args=“raid=noautodetectswiotlb=16384crashkernel=16M,lowcrashkernel=512M,highmodprobe.blacklist=virtio_nettransparent_hugepage=neveracpi_force_table_ver
- 【Linux探索学习】第二十五弹——动静态库:Linux 中静态库与动态库的详细解析
GG Bond.ฺ
Linux探索学习linux学习运维
Linux学习笔记:https://blog.csdn.net/2301_80220607/category_12805278.html?spm=1001.2014.3001.5482前言:在Linux系统中,静态库和动态库是开发中常见的两种库文件类型。它们在编译、链接、内存管理以及程序的性能和可维护性方面有着显著的差异。了解静态库与动态库的区别和使用方式,有助于开发者根据实际需求选择最适合的解决
- Linux学习笔记16 - 系统命令
KAMI STUDIO
Linux学习笔记linux学习笔记
1.Linux常见系统管理命令命令含义格式su切换用户su[选项][用户名]ps显示系统由该用户运行的进程列表ps[选项]top动态显示系统中运行的程序(一般为每隔5s)topkill输出特定的信号给指定PID(进程号)的进程,并根据该信号完成指定的行为,其中可能的信号有进程挂起、进程等待、进程终止等kill[选项]进程号uname显示系统的信息uname[选项]setup系统图形化界面配置set
- linux man date命令,Linux学习笔记之date命令
勃斯丶李 mkq~~
linuxmandate命令
一、自定义输出[root@cent1~]#date+%Y-%m-%d2010-07-17[root@cent1~]#[root@cent1~]#date+’%Y-%m-%d%H:%M:%S’2010-07-1722:55:32[root@cent1~]#[root@cent1~]#date+’%H:%M:%S’22:55:44[root@cent1~]#[root@cent1sbin]#date+
- linux系统发行版安装,linux学习笔记(一)Linux的发行版&安装centos7
萌萌爱恋
linux系统发行版安装
Linux的发行版Slackware特点就是安装灵活,目录结构严谨,版本力求稳定而非追新。s.u.s.eSuSE拥有界面友好的安装过程,还有图形管理工具。据说是最好看的linux图形界面,但是服务器上少有图形界面,不适合用于服务器。RedHatRedHatEnterpriseLinux(RHEL)RHEL,是redhat发展出来的企业版本分支,版本迭代慢。FedoraFedora是一套从RedHa
- 2021-08-01
yqq32
转载自https://blog.csdn.net/yy150122/article/details/106146414Linux从零开始学习笔记从零开始学习Linux,记录笔记,担心自己以后会忘,也供大家茶余饭后,闲来无事看看,自己的理解只能到这,能力有限。Linux学习笔记第一章Linux起源第二章系统分区第三章Linux安装与配置第四章Linux常用命令第一节文件处理命令第一讲命令格式与目录处
- Linux学习笔记
卅云川
指令集合指令内容startx纯文本界面下(不能有X存在)启动窗口界面的做法date显示日期与时间locale显示目前所支持的语系cal显示日历bc内建计算器manmanual(操作说明)的简写,查询用whatis相当于man-fapropos相当于man-kinfo查询用,将文件数据拆分后展示nano文书编辑器sync数据同步写入磁盘shutdown惯用的关机指令reboot重新启动halt系统停
- CentOS虚拟机桥接方式没有IP地址如何解决?——田中智的Linux学习笔记
技术带师御坂云
cent虚拟机使用linuxcentos网络
CentOS虚拟机桥接方式没有IP地址如何解决?——田中智的Linux学习笔记打开创建的CentOS7虚拟机,之前已经配置这个网络连接方式为桥接方式,输入【ipaddr】获取本机ip,但是这里除了本机的【127.0.0.1】之外,【ifcfg-ens33】作为虚拟机的外接网络却没有IP地址,甚至我用xshell远程都无法执行。此时我就要去找到【ifcfg-ens33】这个对应的脚本去配置一下。因为
- Linux超详细笔记
Gunalaer
Linuxlinux笔记运维
文章目录Linux学习笔记操作系统Linux初识Linux的诞生Linux内核Linux发行版虚拟机VMware安装远程连接Linux系统FinalShellFinalShell连接LinuxWSL配置UbuntuLinux常用命令1.入门2.ls命令cd命令3.pwd命令4.相对路径和绝对路径5.mkdir命令6.文件操作命令(1)touch创建文件(2)cat查看文件内容(3)more查看文件
- CentOS7内核
天噵酉州懃_b1ba
1、查看内核版本uname-a或uname-r2、查看centOS版本cat/etc/redhat-release3、查看当前系统有几个内核cat/boot/grub2/grub.cfg|grepmenuentry4、设置默认启动内核grub2-set-default"CentOSLinux(3.10.0-327.el7.x86_64)7(Core)"5、查看默认启动内核grub2-editenv
- Linux基础-shell脚本变量
寒菜
linux学习笔记之shell变量系统变量:env可以查看系统变量变量名作用$0当前脚本的名字$n传递给脚本或者函数的参数,n表示第几个参数$#传递给脚本或函数的参数个数$*传递给脚本或函数的所有参数$@传递给脚本或者函数的所有参数$$当前shell脚本进程的PID$?函数返回值,或者上个命令的退出状态$BASHBASH的二进制文件问的路径$BASH_ENVBASH的启动文件$BASH_VERSI
- 【Linux学习笔记】入门2 -Linux常用的shell命令
redeemer奇
嵌入式Linux软件笔记嵌入式linuxshell
在window系统下,使用GUI(图形用户界面),基本采用鼠标点击的方式完成操作。在Linux系统下,使用cmdline(命令行),基本采用输入命令的方式完成操作。1、shell命令通用格式command-options[argument]command:Shell命令名称。options:选项,同一种命令可能有不同的选项,不同的选项其实现的功能不同。argument:Shell命令是可以带参数的
- redhat grub.cfg配置文件丢失或报错解决
怡雪~
linuxlinux运维服务器
1.实验环境:把grub.cfg删除[root@example~]#rm-rf/boot/grub2/grub.cfg2.重启服务器3,发现进入系统失败输入以下命令ls:列出当前设备上的文件和目录。grub>ls(hd0)(hd0,msdos3)(hd0,msd0s2)(hd0,msdos1)#一般第一个为/boot分区set:显示或设置GRUB变量。grub>setroot='hd0,msdos
- linux学习笔记-文件默认权限和特殊权限(s、t)
weixin_51502988
linux学习linux学习
1.文件默认权限之前的文章中讲过用户管理时创建一个新账户和新群组时,系统的是按默认设置创建的,同样创建文件也是有默认设置的。1.1umask作用:查询或修改目前使用者在创建文件或目录时的默认权限值[root@192~]#umask0022使用mask默认权限,查询到四位数字,第一位表示特殊权限(文章后讲),其中后三位是分别表示user、group、others的权限。但这个权限为什么是022呢?我
- Linux学习笔记(centOS)—— 文件系统
通大侠
linux学习笔记
目录一、Linux中的文件打开方式二、目录结构三、相关命令切换目录命令列出当前目录下的文件和目录命令一、Linux中的文件“万物皆文件。”图1.1所有文件打开方式图形化界面左上角的位置→计算机,打开以后就可以看到Linux全部的文件了,与Windows最主要的区别是没有盘符。有些目录图标有向外的箭头,比如bin目录。这表示它并不是直接放在根目录下的,本质是一个文件夹的链接,类似于Windows里的
- Linux学习笔记3 用户与权限
Failur
linux学习笔记
1、root1.root用户与普通用户root用户拥有最大的权限,可以操作所有文件普通用户只有自己文件夹树下的所有文件的操作权限其他大部分文件只有只读执行权限例root用户可以在根目录下创建文件夹[failur@localhost/]$mkdirtestmkdir:无法创建目录"test":权限不够[failur@localhost/]$suroot密码:[root@localhost/]mkdi
- Linux的重要命令之.find命令--》查找命令
浅唱 王
linux运维服务器
find命令--》查找命令find用途:可以全局查找文件或文件夹一般格式:find-option-filename我们以题目为例:使用find命令查找出/find目录下大小大于1M小于4M的文件[root@wangyalinfind]#find/find-size+1M-a-size-4M-typef/find/boot/grub2/fonts/unicode.pf2使用find查找/etc/pa
- linux学习笔记2-软件安装卸载等相关
scott_yu779
http://blog.csdn.net/get_set/article/details/51276609
- Linux学习笔记之二:U-Boot常用命令
manmanbab
linux学习笔记
参考链接:https://blog.csdn.net/qq_46079439/article/details/125474461U-Boot常用命令uboot简介uboot属于bootloader的一种,是用来引导启动内核的,它的最终目的就是:从flash中读出内核,放到内存中,启动内核。它刚开始被放到flash上,然后上电以后先执行它,它会完成硬件初始化,设置处理器模式,关闭看门狗,屏蔽中断,初
- ASM系列四 利用Method 组件动态注入方法逻辑
lijingyao8206
字节码技术jvmAOP动态代理ASM
这篇继续结合例子来深入了解下Method组件动态变更方法字节码的实现。通过前面一篇,知道ClassVisitor 的visitMethod()方法可以返回一个MethodVisitor的实例。那么我们也基本可以知道,同ClassVisitor改变类成员一样,MethodVIsistor如果需要改变方法成员,注入逻辑,也可以
- java编程思想 --内部类
百合不是茶
java内部类匿名内部类
内部类;了解外部类 并能与之通信 内部类写出来的代码更加整洁与优雅
1,内部类的创建 内部类是创建在类中的
package com.wj.InsideClass;
/*
* 内部类的创建
*/
public class CreateInsideClass {
public CreateInsideClass(
- web.xml报错
crabdave
web.xml
web.xml报错
The content of element type "web-app" must match "(icon?,display-
name?,description?,distributable?,context-param*,filter*,filter-mapping*,listener*,servlet*,s
- 泛型类的自定义
麦田的设计者
javaandroid泛型
为什么要定义泛型类,当类中要操作的引用数据类型不确定的时候。
采用泛型类,完成扩展。
例如有一个学生类
Student{
Student(){
System.out.println("I'm a student.....");
}
}
有一个老师类
- CSS清除浮动的4中方法
IT独行者
JavaScriptUIcss
清除浮动这个问题,做前端的应该再熟悉不过了,咱是个新人,所以还是记个笔记,做个积累,努力学习向大神靠近。CSS清除浮动的方法网上一搜,大概有N多种,用过几种,说下个人感受。
1、结尾处加空div标签 clear:both 1 2 3 4
.div
1
{
background
:
#000080
;
border
:
1px
s
- Cygwin使用windows的jdk 配置方法
_wy_
jdkwindowscygwin
1.[vim /etc/profile]
JAVA_HOME="/cgydrive/d/Java/jdk1.6.0_43" (windows下jdk路径为D:\Java\jdk1.6.0_43)
PATH="$JAVA_HOME/bin:${PATH}"
CLAS
- linux下安装maven
无量
mavenlinux安装
Linux下安装maven(转) 1.首先到Maven官网
下载安装文件,目前最新版本为3.0.3,下载文件为
apache-maven-3.0.3-bin.tar.gz,下载可以使用wget命令;
2.进入下载文件夹,找到下载的文件,运行如下命令解压
tar -xvf apache-maven-2.2.1-bin.tar.gz
解压后的文件夹
- tomcat的https 配置,syslog-ng配置
aichenglong
tomcathttp跳转到httpssyslong-ng配置syslog配置
1) tomcat配置https,以及http自动跳转到https的配置
1)TOMCAT_HOME目录下生成密钥(keytool是jdk中的命令)
keytool -genkey -alias tomcat -keyalg RSA -keypass changeit -storepass changeit
- 关于领号活动总结
alafqq
活动
关于某彩票活动的总结
具体需求,每个用户进活动页面,领取一个号码,1000中的一个;
活动要求
1,随机性,一定要有随机性;
2,最少中奖概率,如果注数为3200注,则最多中4注
3,效率问题,(不能每个人来都产生一个随机数,这样效率不高);
4,支持断电(仍然从下一个开始),重启服务;(存数据库有点大材小用,因此不能存放在数据库)
解决方案
1,事先产生随机数1000个,并打
- java数据结构 冒泡排序的遍历与排序
百合不是茶
java
java的冒泡排序是一种简单的排序规则
冒泡排序的原理:
比较两个相邻的数,首先将最大的排在第一个,第二次比较第二个 ,此后一样;
针对所有的元素重复以上的步骤,除了最后一个
例题;将int array[]
- JS检查输入框输入的是否是数字的一种校验方法
bijian1013
js
如下是JS检查输入框输入的是否是数字的一种校验方法:
<form method=post target="_blank">
数字:<input type="text" name=num onkeypress="checkNum(this.form)"><br>
</form>
- Test注解的两个属性:expected和timeout
bijian1013
javaJUnitexpectedtimeout
JUnit4:Test文档中的解释:
The Test annotation supports two optional parameters.
The first, expected, declares that a test method should throw an exception.
If it doesn't throw an exception or if it
- [Gson二]继承关系的POJO的反序列化
bit1129
POJO
父类
package inheritance.test2;
import java.util.Map;
public class Model {
private String field1;
private String field2;
private Map<String, String> infoMap
- 【Spark八十四】Spark零碎知识点记录
bit1129
spark
1. ShuffleMapTask的shuffle数据在什么地方记录到MapOutputTracker中的
ShuffleMapTask的runTask方法负责写数据到shuffle map文件中。当任务执行完成成功,DAGScheduler会收到通知,在DAGScheduler的handleTaskCompletion方法中完成记录到MapOutputTracker中
- WAS各种脚本作用大全
ronin47
WAS 脚本
http://www.ibm.com/developerworks/cn/websphere/library/samples/SampleScripts.html
无意中,在WAS官网上发现的各种脚本作用,感觉很有作用,先与各位分享一下
获取下载
这些示例 jacl 和 Jython 脚本可用于在 WebSphere Application Server 的不同版本中自
- java-12.求 1+2+3+..n不能使用乘除法、 for 、 while 、 if 、 else 、 switch 、 case 等关键字以及条件判断语句
bylijinnan
switch
借鉴网上的思路,用java实现:
public class NoIfWhile {
/**
* @param args
*
* find x=1+2+3+....n
*/
public static void main(String[] args) {
int n=10;
int re=find(n);
System.o
- Netty源码学习-ObjectEncoder和ObjectDecoder
bylijinnan
javanetty
Netty中传递对象的思路很直观:
Netty中数据的传递是基于ChannelBuffer(也就是byte[]);
那把对象序列化为字节流,就可以在Netty中传递对象了
相应的从ChannelBuffer恢复对象,就是反序列化的过程
Netty已经封装好ObjectEncoder和ObjectDecoder
先看ObjectEncoder
ObjectEncoder是往外发送
- spring 定时任务中cronExpression表达式含义
chicony
cronExpression
一个cron表达式有6个必选的元素和一个可选的元素,各个元素之间是以空格分隔的,从左至右,这些元素的含义如下表所示:
代表含义 是否必须 允许的取值范围 &nb
- Nutz配置Jndi
ctrain
JNDI
1、使用JNDI获取指定资源:
var ioc = {
dao : {
type :"org.nutz.dao.impl.NutDao",
args : [ {jndi :"jdbc/dataSource"} ]
}
}
以上方法,仅需要在容器中配置好数据源,注入到NutDao即可.
- 解决 /bin/sh^M: bad interpreter: No such file or directory
daizj
shell
在Linux中执行.sh脚本,异常/bin/sh^M: bad interpreter: No such file or directory。
分析:这是不同系统编码格式引起的:在windows系统中编辑的.sh文件可能有不可见字符,所以在Linux系统下执行会报以上异常信息。
解决:
1)在windows下转换:
利用一些编辑器如UltraEdit或EditPlus等工具
- [转]for 循环为何可恨?
dcj3sjt126com
程序员读书
Java的闭包(Closure)特征最近成为了一个热门话题。 一些精英正在起草一份议案,要在Java将来的版本中加入闭包特征。 然而,提议中的闭包语法以及语言上的这种扩充受到了众多Java程序员的猛烈抨击。
不久前,出版过数十本编程书籍的大作家Elliotte Rusty Harold发表了对Java中闭包的价值的质疑。 尤其是他问道“for 循环为何可恨?”[http://ju
- Android实用小技巧
dcj3sjt126com
android
1、去掉所有Activity界面的标题栏
修改AndroidManifest.xml 在application 标签中添加android:theme="@android:style/Theme.NoTitleBar"
2、去掉所有Activity界面的TitleBar 和StatusBar
修改AndroidManifes
- Oracle 复习笔记之序列
eksliang
Oracle 序列sequenceOracle sequence
转载请出自出处:http://eksliang.iteye.com/blog/2098859
1.序列的作用
序列是用于生成唯一、连续序号的对象
一般用序列来充当数据库表的主键值
2.创建序列语法如下:
create sequence s_emp
start with 1 --开始值
increment by 1 --増长值
maxval
- 有“品”的程序员
gongmeitao
工作
完美程序员的10种品质
完美程序员的每种品质都有一个范围,这个范围取决于具体的问题和背景。没有能解决所有问题的
完美程序员(至少在我们这个星球上),并且对于特定问题,完美程序员应该具有以下品质:
1. 才智非凡- 能够理解问题、能够用清晰可读的代码翻译并表达想法、善于分析并且逻辑思维能力强
(范围:用简单方式解决复杂问题)
- 使用KeleyiSQLHelper类进行分页查询
hvt
sql.netC#asp.nethovertree
本文适用于sql server单主键表或者视图进行分页查询,支持多字段排序。KeleyiSQLHelper类的最新代码请到http://hovertree.codeplex.com/SourceControl/latest下载整个解决方案源代码查看。或者直接在线查看类的代码:http://hovertree.codeplex.com/SourceControl/latest#HoverTree.D
- SVG 教程 (三)圆形,椭圆,直线
天梯梦
svg
SVG <circle> SVG 圆形 - <circle>
<circle> 标签可用来创建一个圆:
下面是SVG代码:
<svg xmlns="http://www.w3.org/2000/svg" version="1.1">
<circle cx="100" c
- 链表栈
luyulong
java数据结构
public class Node {
private Object object;
private Node next;
public Node() {
this.next = null;
this.object = null;
}
public Object getObject() {
return object;
}
public
- 基础数据结构和算法十:2-3 search tree
sunwinner
Algorithm2-3 search tree
Binary search tree works well for a wide variety of applications, but they have poor worst-case performance. Now we introduce a type of binary search tree where costs are guaranteed to be loga
- spring配置定时任务
stunizhengjia
springtimer
最近因工作的需要,用到了spring的定时任务的功能,觉得spring还是很智能化的,只需要配置一下配置文件就可以了,在此记录一下,以便以后用到:
//------------------------定时任务调用的方法------------------------------
/**
* 存储过程定时器
*/
publi
- ITeye 8月技术图书有奖试读获奖名单公布
ITeye管理员
活动
ITeye携手博文视点举办的8月技术图书有奖试读活动已圆满结束,非常感谢广大用户对本次活动的关注与参与。
8月试读活动回顾:
http://webmaster.iteye.com/blog/2102830
本次技术图书试读活动的优秀奖获奖名单及相应作品如下(优秀文章有很多,但名额有限,没获奖并不代表不优秀):
《跨终端Web》
gleams:http