Yan's BLOG

awk实例操作学习记录

  • Published in CentOS 6
  • May 31, 2013

 

awk '/^root/ { print }' /etc/passwd    打印以root开头的行

 


awk是一种编程语言,用于在linux/unix下对文本和数据进行处理。数据可以来自标准输入、一个或多个文件,或其它命令的输出。它支持用户自定义函数和动态正则表达式等先进功能,是linux/unix下的一个强大编程工具。
awk的处理文本和数据的方式是这样的,它逐行扫描文件,从第一行到最后一行,寻找匹配的特定模式的行,并在这些行上进行你想要的操作。如果没有指定处理动作,则把匹配的行显示到标准输出(屏幕),如果没有指定模式,则所有被操作所指定的行都被处理。
例子:
一般语法格式
1.# awk '{ print }' /etc/passwd
或# awk '{ print $0 }' /etc/passwd
马上显示/etc/passwd的内容,其中$0变量表示整个当前行
2.# awk '{ print "william" }' /etc/passwd
或# awk '{ print "" }' /etc/passwd
第一条按照/etc/passwd文件中的行数显示william,第二条则显示空行。
 
字段
3.# awk -F: '{ print $1 }' /etc/passwd
或# awk -F: '{ print $1 $3 }' /etc/passwd
第一条打印输入文件中每一行中出现的第一个字段,第二条则打印第一和第三字段。其中-F:表示指定“:”作为字段分隔符。
4.# awk -F: '{ print $1 " " $3 }' /etc/passwd
# awk -F: '{ print "username: "$1 "\t\tuid: " $3 }' /etc/passwd
例3中输出的结果两个字段之间没有空格,这第一条命令就是加空格,第二条则加了文本标签。
 
外部脚本
5.# awk -f my.awk /etc/passwd
如果要运行外部的脚本加上-f选项即可,其中my.awk是脚本,/etc/passwd是要操作的文本。
 
BEGIN和END块
6.BEGIN{
FS=":"        相当于命令行中的-F:
}
{ print $1 }
END{
print "william"
}
awk开始处理文件之前会执行BEGIN块,awk处理文件之后会执行END块。
 
表达式和块
7.# awk '/root/ { print }' /etc/passwd    打印包含root的行
# awk '/^root/ { print }' /etc/passwd    打印以root开头的行
# awk '/~root/ { print NR NF }' /etc/passwd    有以root结尾的行打印当前记录数和当前记录字段数
# awk '/^root|wang/ { print }' /etc/passwd    打印以root或wang开头的行
# awk '/^[rw]/ { print }' /etc/passwd    打印以字母r或w开头的行
# awk '$1 ~/[0-9]/ { print }' /etc/passwd    打印字段1中以数字结尾的行
# awk -F: '$4 ^/[0-9]/ { print }' /etc/passwd    打印字段4中以数字开头的行
8.# awk -F: '$4==27 { print }' /etc/passwd    打印字段4等于27的行
# awk -F: '$4!=27 || $3>492 { print }' /etc/passwd    打印字段4不等于27或字段3大于492的行
# awk -F: '$4==27 || $3>42 { print $1+10 }' /etc/passwd    假如字段4等于27或者字段3大于42,打印$1+10的值,如果$1不是数字默认为0。
# awk -F: '{print $4==27 ? "ok" : "err"}' /etc/passwd    字段4等于27打印ok,否则打印err
# awk '/^root/,/^bin/' /etc/passwd    打印以root开头到以bin开头的所有行,假如出现第二个以root开头的行,则到下一个yibin开头的行结束或到文件结尾。
 
条件语句
9.BEGIN{
FS=":"
}
{
if($3==27){
        if($4==27){
        print "love"
        }
}
else if($1 ~/root/) { print "one"}    //~是包含,^是不包含
else {
         print "others" " " $1}
}
END{
print "william"
}
 
变量
10.BEGIN   {x=0}
/^$/ {x=x+1}
END {print "There are "x" blank lines."}
计算空白行的数量
11.# awk -f my.awk x=8 ./test.c 
原来是5,加入x=8后,结果变成了13.另外BEGIN   {x=0}可以不要。
12.BEGIN   {x="0.01"}    //注意变成字符串了
/^$/ {x=x+1}
END {print "There are "x" blank lines."}
执行# awk -f my.awk  ./test.c 结果是5.01
 
字段分隔符
前面设置FS=":",当然也可以设置多个任意字符为分隔符。
例如:
FS="\t+"    +号表示一个或多个
FS="root[0-9][0-9]"    表示root后面接两个数字为分隔符
 
记录分隔符
NR 记录号 NS 记录分隔符 FS字段分隔符
比如通讯录把名字 地址 电话号码整理为一个记录。其中文本如下
wang
Hunan Chenzhou
123456
 
li
Guangzhou Zhuhai
654321
13.执行脚本为:BEGIN {
    FS="\n"
    RS=""
}
{print $1 ","$2","$3}
输出:
wang,Hunan Chenzhou,123456
li,Guangzhou Zhuhai,654321
 
14.执行脚本为:BEGIN   {
FS="\n"
RS=""
OFS="-"    输出字段间隔
ORS="\nnext:\n"    输出记录间隔
}
{print $1, $2, $3}
输出:
wang-Hunan Chenzhou-123456
next:
li-Guangzhou Zhuhai-654321
next:
 
循环语句
15.BEGIN   {
FS="\n"
RS=""
OFS="-"
ORS=""
}
{
x=1
while(x<NF){
print $x "\t"    上面的OFS赋值将不起作用
x++
}
print $NF "\n"}
此外有do while,for,break,continue。
 
数组
16.
数组下标经常从1开始,而不是0
数组下标字符串化 例如:myarr["name"]="wang" 就算不是字符串也会被看成字符串。
17.delete myarr[1]     删除数组元素1
18.if (wang in myarr) {print "ok"}     查看数组元素
 
字符串函数
string="Wo men shi ku bi de cheng xu yuan !"
print string[2]     会报错!!
怎么办?
print length(string)    打印字符串长度
print index(string,"men")    查找men在字符串中的位置
print tolower(string)    转换为小写
print toupper(string)    转换为大写
mysbu=substr(string,startpos,maxlen)    在startpos开始截取maxlen这么长的字符
print match(string,/men/),RSTART,RLENGTH    寻找匹配men的位子和长度
sbu(old,new,string) 替换一个
gsbu(old,new,string)    全部替换
num=split("1,2,3,4,5,6",mynum,",")    切开字符串,并将各部分放到整数下标的数组中
 
函数格式
function 函数名(参数)
{
    ……
}

 

Read more...

可以连接网络 浏览器无法上网

简单来说netsh winsock reset命令含义是重置 Winsock 目录。如果一台机器上的Winsock协议配置有问题的话将会导致网络连接等问题,就需要用netsh winsock reset命令来重置Winsock目录借以恢复网络。

winsock是windows网络编程接口,从Windows XP SP2开始内置了一条命令使用netsh能够对该接口进行修复。

netsh是一个能够通过命令行操作几乎所有网络相关设置的接口。比如设置IP,DNS,网卡,无线网络等。
netsh winsock reset:
先进入netsh
然后进入winsock这个部件
对winsock这个部件执行reset命令。
效果就是重置Winsock。对于一些WinSock被破坏导致的问题有奇效。在netsh出现之前,对于WinSock问题的修复是非常繁琐的。

Read more...

Remove duplicates line from files

  • Published in reaver
  • May 30, 2013

perl -ne 'print unless $a{$_}++' file > out put file

 

 

awk '{a[$1]} END {for(i in a) print i}' filename > out put file

 

sort myfile.txt | uniq > out put file

 

 

awk '!_[$0]++' file

 

 

ruby -00 -ne 'puts $_.split("\n").uniq' file

 

 

perl -ne 'print unless $a{$_}++' file

 

 

sed '$!N; /^\(.*\)\n\1$/!P; D'

 

 

 

Read more...

使用UltraEdit处理超大文件

  • Published in reaver
  • May 30, 2013

UE可以处理几乎任意大小的文件,当你想阅读GB级别的LOG文件时,UE时很好的选择。

1.关闭行号显示

关闭行号显示可以让你更快的打开一个大型文件。

2.不使用临时文件

不使用临时文件可以减少加载大型文件的时间。你可以设置阈值来合理使用这个功能。

3.关闭文件检测和转换

最后,关闭文件检测和转换功能,就能快捷的打开大型文件了。

设置好以后,我们用一个4GB的文件来做测试。

这是我们要打开的文件:

用UE打开:

 

Read more...

httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName

  • Published in CentOS 6
  • May 29, 2013

httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName

解决办法非常简单:

#vim /web/apache/conf/httpd.conf (在这里/web/apahce是我安装apache的目录,你默认安装的话应该是/usr/local/apache2/icons)

找到#ServerName www.example.com:80   把#去掉,再重启apache即可没事了。

现象:

bogon:~/webserver/httpd-2.0.59 # /usr/local/apache2/bin/apachectl start
httpd: Could not determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
httpd (pid 20183) already running


這個問題應該是沒有在 /etc/httpd/conf/httpd.conf 中設定 ServerName  

vi /usr/local/apache2/conf/httpd.conf


最简单的,修改httpd.conf文件,增加:
ServerName www.example.com:80
我的改为:

ServerName www.example.com:80



再次启动就正常了!
------------------------------------------------------------------------------------------------------------------------------------------------------------
AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using localhost.localdomain. Set the 'ServerName' directive globally to suppress this message
httpd (pid 7907) already running
修改:去掉注释即可。
# If your host doesn't have a registered DNS name, enter its IP address here.
#
ServerName www.example.com:8080


解决方案:
进入apache的安装目录:
Windows : D:\Program Files\Apache Software Foundation\Apache2.2\conf
linux : /usr/local/apache/conf
用记事本打开httpd.conf
将里面的#ServerName localhost:80注释去掉即可。
再执行httpd
然后可以通过浏览器访问http://localhost:80,如果页面显示“It works!”,即表示apache已安装并启动成功。

Read more...

[warn] NameVirtualHost *:80 has no VirtualHosts

  • Published in CentOS 6
  • May 29, 2013

错误:[warn] NameVirtualHost *:80 has no VirtualHosts 

原因:定义了多个NameVirtualHost

解决:Ubuntu之前的版本定义在/etc/apache2/sites-available/default, 8.04后在/etc/apache2/ports.conf

故可以将/etc/apache2/ports.conf中的NameVirtualHost *:80注释掉

这个问题的本质是在没有定义域名是一个端口只能对应一个虚拟主机,将NameVirtualHost *:80改为其他端口也可以解决

如果有多个不同的域名的话,用同样的端口也可以

Read more...

CentOS配置时间同步NTP

  • Published in CentOS 6
  • May 28, 2013

CentOS配置时间同步NTP

为什么要使用ntpd而不是ntpdate?

原因很简单,ntpd是步进式的逐渐调整时间,而ntpdate是断点更新,比如现在服务器时间是9.18分,而标准时间是9.28分,ntpd会在一段时间内逐渐的把时间校准到与标准时间相同,而ntpdate会立刻把时间调整到9.28分,如果你往数据库内写入内容或在其他对时间有严格要求的生产环境下,产生的后果会是很严重的。(注:当本地时间与标准时间相差30分钟以上是ntpd会停止工作)

NTP通信协议原理

1.首先主机启动NTP。

2.客户端会向NTP服务器发送调整时间的message。

3.然后NTP server会送出当前的标准时间给client

4.client接受来自server的时间后,会根据这个信息来调整自己的时间。这样就实现了网络对时。

NTP这个deamon采用了123端口。(UDP)

“当我们要利用Tim server来进行实践的同步更新时,就需要使用NTP软件提供的ntpdate来连接端口123”

与时间相关的一些命令和配置文件

1./etc/ntp.conf

linux各版本虽然目录不同,但文件名相同。可以用which ntp.conf 或者locate ntp.conf来查找。这是NTP唯一的一个设置文件。

2./usr/share/zoneinfo/

这个里面规定了这个主要时区的时间设置文件。

3./etc/sysconfig/clock

这个文件是linux的主要时区设置文件,每次开机后linux会自动读取这个文件来设置系统所默认的显示时间,可以看看它里面到底设置了什么:

cat /etc/sysconfig/clock 
# The ZONE parameter is only evaluated by system-config-date. 
# The timezone of the system is defined by the contents of /etc/localtime. 
ZONE="Asia/Shanghai" 
UTC=true 
ARC=false

4./etc/localtime

本地端时间配置文件。

5./bin/date

这个是时间的修改命令,除了输出时间,还可以修改时间。

6./sbin/hwclock

因为linux系统上面BIOS时间与linux系统时间是分开的,所以使用date这个指令调整了时间之后,还需要使用hwclock才能将修改过的时间写入BIOS中。

7./usr/sbin/ntpd

这是NTP的daemon文件,需要启动它才能提供NTP服务,这个命令会读取/etc/ntp.conf里面的设置。

8./usr/sbin/ntpdate

这是client用来连接NTP Server的主要执行文件,如果您不想启用NTP,只想启用NTP Client功能的话,可以只应用此命令。

9,/usr/sbin/ntptrace

可以用来追踪某台时间服务器的时间对应关系。

安装与配置

1、设置时区

cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

2、安装ntpd服务

yum -y install ntp

3、配置ntpd

vi /etc/ntp.conf

    
restrict default kod nomodify notrap nopeer noquery   #
restrict -6 default kod nomodify notrap nopeer noquery  #针对ipv6设置

# 允许本地所有操作
restrict 127.0.0.1 
restrict -6 ::1

# 允许的局域网络段或单独ip
restrict 10.0.0.0 mask 255.0.0.0 nomodify motrap
restrict 192.168.0.0 mask 255.255.255.0 nomodify motrap
restrict 192.168.1.123 mask 255.255.255.255 nomodify motrap

# 使用上层的internet ntp服务器
restrict cn.pool.ntp.org
restrict 1.cn.poo.ntp.org
restrict 0.asia.pool.ntp.org
restrict 3.asia.pool.ntp.org

server cn.pool.ntp.org prefer
server 1.cn.poo.ntp.org
server 0.asia.pool.ntp.org
server 3.asia.pool.ntp.org

# 如果无法与上层ntp server通信以本地时间为标准时间
server   127.127.1.0    # local clock
fudge    127.127.1.0 stratum 10    

# 计算本ntp server 与上层ntpserver的频率误差
driftfile /var/lib/ntp/drift

# Key file containing the keys and key identifiers used when operating
# with symmetric key cryptography. 
keys /etc/ntp/keys
#日志文件
logfile /var/log/ntp.log

修改/etc/sysconfig/ntpd:

# Drop root to id 'ntp:ntp' by default. 
OPTIONS="-u ntp:ntp -p /var/run/ntpd.pid"

# Set to 'yes' to sync hw clock after successful ntpdate 
SYNC_HWCLOCK=yes #make no into yes; BIOS的时间也会跟着修改

# Additional options for ntpdate 
NTPDATE_OPTIONS=""

验证与状态检查

运行ntp

service ntpd start/stop/restart

查看ntp的端口

应该看到123端口

netstat -unlnp

查看ntp服务器有无和上层连通

# ntpstat

synchronised to NTP server () at stratum 2
time correct to within 74 ms
polling server every 128 s

注意:此命令出现上述synchronised结果比较慢,我的用了大概5分钟。

查看ntp服务器与上层间的联系

# ntptrace -n 127.0.0.1

127.0.0.1: stratum 3, offset -0.001095, synch distance 0.532610
116.193.83.174: timed out, nothing received

查看ntp服务器与上层ntp服务器的状态

# ntpq -p

其中:

remote - 本机和上层ntp的ip或主机名,“+”表示优先,“*”表示次优先
refid - 参考上一层ntp主机地址
st - stratum阶层
when - 多少秒前曾经同步过时间
poll - 下次更新在多少秒后
reach - 已经向上层ntp服务器要求更新的次数
delay - 网络延迟
offset - 时间补偿
jitter - 系统时间与bios时间差

如果所有远程服务器的jitter值是4000并且delay和reach的值是0,那么说明时间同步是有问题的

可能的原因是防火墙阻断了与server之间的通讯,即123端口是否正常开放;

此外每次重启NTP服务器之后大约要3-5分钟客户端才能与server建立正常的通讯连接,否则你在客户端执行“ntpdate 服务器ip”的时候将返回:

27 Jun 10:20:17 ntpdate[21920]: no server suitable for synchronization found

启动NTPD

我采用了一个很笨的办法来手动启动ntpd,而不是把ntpd加入服务,写一个简单的脚本

vi ntpstart.sh

ntpdate cn.pool.ntp.org
ntpdate cn.pool.ntp.org
service ntpd start

然后加入/etc/rc.local

/shpath/ntpstart.sh

这是因为我有一台服务器启动后的时间总是与标准时间差别很大,每次启动后ntpd要花很多时间才能把时间校准,所以我是先在系统启动后ntpdate更新两次,然后再启动ntpd服务,在freebsd里好像有修改配置文件,让时间服务器在系统启动之前启动的,centos还没仔细琢磨

客户端配置

方法1.使用ntpdate与上面配置的时间服务器定时同步,不推荐此方法

方法2.安装ntpd,指定时间server为上面配置的服务器地址,推荐

更详细的介绍参见台湾 鸟哥的Linux私房菜

http://linux.vbird.org/linux_server/0440ntp.php

附录

中国国家授时中心(陕西西安) 210.72.145.44

上海: 61.129.66.79 (t2.hshh.org) 61.129.42.44 (ntp.fudan.edu.cn) 202.120.2.101 (ntp.sjtu.edu.cn)

浙江 218.75.4.130 (t1.hshh.org)

内蒙古 218.21.130.42 (t1.hshh.org)

香港: 137.189.11.66 (clock.cuhk.edu.hk ) 137.189.11.128 (ntp.cuhk.edu.hk )

台湾: 220.130.158.52(time.stdtime.gov.tw) 220.130.158.72(Clock.stdtime.gov.tw)

220.130.158.51(tick.stdtime.gov.tw) 220.130.158.54(watch.stdtime.gov.tw)

asia.pool.ntp.org, 更多亚洲服务器请参考 http://www.pool.ntp.org/zone/asia

cn.pool.ntp.org, 更多中国服务器请参考 http://www.pool.ntp.org/zone/cn

tw.pool.ntp.org, 更多中国台湾服务器请参考 http://www.pool.ntp.org/zone/tw

hk.pool.ntp.org, 更多中国香港服务器请参考 http://www.pool.ntp.org/zone/hk

12/02/15补充:

取消ntpd自动启动,在系统启动时,指定ntpdate远程标准时间服务器两次,然后service ntpd start

好像也可以修改rc.conf或者加上一堆什么参数来实现,我偷懒用这个笨办法来保证时间的准确了

 

 http://www.crsay.com/wiki/wiki.php/server/centos/ntp-set

12/02/13补充: 郑重建议不再使用ntpdate了,以下内容仅供参考,不建议使用
Read more...

BlackScreen Problem In BackTrack 5 R2 After StartX

  • Published in reaver
  • May 27, 2013

BackTrack 5 R3: Black Screen After Startx/Caps Lock Blinks/USB Thumb Drive Boot Problem

 
Well, I have to say up front, this took me a couple of hours to resolve.  It appears that this issue is quite common, but I found, literally no complete resolution to this issue anywhere on the Internet.  Here is what I tried to do:
I was trying to make a bootable USB drive with BackTrack 5 R3 on it.  Here is what I did to get that done:
1.  Get unetbootin and the ISO of backtrack.
2.  Run unetbootin and select the ISO of backtrack and the USB stick you want to use.
3.  Run the program and wait for it to finish.

This worked, except that it wouldnt boot after typing in 'startx".  It would just freeze up, black screen, and caps lock blinking steadily.  It wouldnt go any further.  From my research into this, it appears to be a video driver issue.  Im running a Dell Latitude E5410.  There appears to be fixes out there, but because Im running this on a USB drive, none of them were permanent fixes.  This is the fix that actually got me to realize that the my USB install was ok, and that this was a video driver issue (I found this in the BackTrack forums, posted by p0cTeam):
quote: insert DVD-live, in the grub press TAB to edit boot, you well see something like this file=/cdrom/preseed/ubuntu.see boot=casper initrd=/casper/initrd.gz, add xforcevesa noapic nosplash irqpoll -- after initrd.gz          end quote.

Well, that worked, ONCE.  There was another fix I found as well, and it appears to be similar in nature, although the syntax was different.  It consisted of editing the grub.cfg file.  The only problem was that I could not do a 'update-grub' after editing the grub file.  Which apparently fixed people's issue IF it was installed on the hard drive of the pc/laptop.  Mine wasnt, again, it was on the USB.  So for some reason, when I did the update-grub command, it complained to me and it never would write to the grub.cfg file.  Bummer.
Well, I found that someone on the Internet mentioned the sys.cfg file.  I looked for it in the linux directory, but I couldnt find it anywhere.  Another bummer.  But, what I did do was boot back into Windows and look at my USB drive and found a file called 'syslinux.cfg'.  I opened it up and I edited as follows:
--------
label unetbootindefault
menu label Default
kernel /ubnkern
append initrd=/ubninit file=/cdrom/preseed/custom.seed boot=casper text splash vga=791 xforcevesa noapic noapci nosplash irqpoll --

label ubnentry0
menu label BackTrack Text - Default Boot Text Mode
kernel /casper/vmlinuz
append initrd=/casper/initrd.gz file=/cdrom/preseed/custom.seed boot=casper  text splash vga=791 xforcevesa noapic noapci nosplash irqpol --


--------
Highlighted above is what I added.  Notice its the same as what p0cTeam said to add, except that it was in the syslinux.cfg file on the USB stick instead of in the grub file on the hard drive.
Ive tested this above and it works well (in my scenario).  I appears that there is about 3 variants to this, according to the install you do.  Again, mine was a USB, while most appears to address an install on the hard drive.  Im not sure how you would edit this on a CD.  I hope this helps you.
 
http://www.shanekillen.com/2012/11/backtrack-5-r3-black-screen-after.html
Read more...

联阳IT1171_A0AA主控U盘量产教程

1、下载量产工具(本帖提供绿色中文版下载)解压,展开工具目录。
2、运行InfUpdate工具输入VID&PID号,点击ADD加入后关闭窗口。
3、运行DtMPTool.exe出现量产工具主界面,见下图:


4、插入U盘后工具会辨认出U盘,如果没发现U盘,请点击“刷新”或“枚举端口”就能找到U盘,见下图:


5、点击“设置”输入密码123后点击“确定”出现参数设置界面。
A、“厂商信息”页面设置如下图:


“厂商信息”栏参数除VID&PID外可随意修改,VID&PID最好别改,若你执意要改则应按十六进制规范填写。“QC项目”栏选“自动侦测”,“磁盘类型”栏可选自己喜欢的,“可除去的”为ZIP,“本地”为HDD。
B、“参数输入”页面可按下图设置:


可以选择自己喜欢的序列号,选“本地”项后就可以输入序列号。第一次量产时“mass production”栏的“开卡之前”项应选“Rebuild Bad Block”模式,因为量产工具对第一次量产的U盘要进行坏块标注,否则量产会失败。因该模式必须扫描整个U盘,所以花费的时间较长,请耐心等待。再次量产时可选“正常”以便节省时间。“开卡之后”项选“没有”。
C、“分区设置”页面设置如下图:


勾选“公共分区I”和“公共分区II”的“分区选项”,“公共分区I”容量大小选“自动”。请注意:量产CDROM时“文件位置”栏的“公共分区II”项应点选“File”,调入镜像时有两种格式可供选择(dgo&iso)。“加密分区”&“隐藏分区”本人认为没有太大的意义,读者可自行研究。
设置好后点击“确定”按钮保存配置文件退出,点击“开始”按钮开始量产。量产成功时会出现下图:


关闭主界面,拔插U盘后在“我的电脑”里就可以见到刚才量产的USBROM和U盘分区了,见下图:


6、注意事项
A、如果量产失败,请双击鲜红色横条打开“出错信息表”,可根据出错信息对设置参数进行调整。
B、量产成功后有可能会出现找不到U盘分区的情况,这时可右击“我的电脑”点“管理”打开“磁盘管理”后重建U盘分区即可。
C、想量产CDROM时,为提高U盘性能,量产前先用本帖提供的“一键4K扇区对齐”工具优化U盘,因为CDROM的只读特性,量产后再优化时对提高性能没有帮助。
D、如果多次量产都失败时,请使用本帖提供的检测工具检测你的U盘,看看U盘的Flash型号在量产工具的Flash列表中有没有,如果没有就不要再浪费时间了,等待更新版本的量产工具吧。
E、本帖提供的量产工具为绿色中文版,适合联阳的IT-1167~1171等主控U盘。
F、因该U盘的工作电流较大,量产时请不要使用USB延长线,最好使用背面端口。

Read more...
Subscribe to this RSS feed