0%

前言

《Linux Shell Scripting Cookbook》是一本不错的介绍bash shell脚本编写技术的书,除了介绍基础知识,书中还提到了很多写脚本时的小技巧,值得借鉴。

阅读全文 »

前言

hexo是一个使用了nodejs的静态博客生成器。可以使用markdown书写文档,然后使用hexo生成可读性更强的网页文件。

为什么使用hexo

书写文档存在的问题

写用于share的文档,太多时间用于使用office处理文档(一般是doc)中的代码,插图和正文的格式,效率过低,而且无法进行版本管理。

鉴于doc这类格式的缺点,推荐使用markdown。

阅读全文 »

Before

Bash Shell具备强大的功能,结合linux下的很多命令行工具,可以高效地完成很多任务。

比如,在做安卓应用的兼容性测试中,需要获取大量的应用给待测设备安装,那么在这种情况下,写一个脚本,可以高效地完成这个任务。以此为例,这篇博客的任务就是,使用脚本从网页批量下载安卓应用APK文件。

Html

我计划下载的文件在这个网址,这是百度的安卓应用商店下面的一个排行榜。

查看这个html页面可以看到下面显示的应用存在以下部分:

阅读全文 »

init()初始化

首次初始化

进行首次初始化,应用反射机制,分析app对象。

如果@ReportCrashes中没有做设置则报错,否则做第二步初始化。

阅读全文 »

Before reading

Last update on 2016-07-31.
本文中所有配置运行于2016年2月, 笔者因为现在上班了,工作环境下( ubuntu12.04 )主要写shell,markdown,vimwiki和纯文本,所以目前没有使用这款功能强大的插件。
文中所有操作未验证目前是否有效,仅供参考。

阅读全文 »

Vagrant是一个基于Ruby的工具,用于创建和部署虚拟化开发环境。也是一个可创建轻量级、高复用性和便于移植的开发环境的工具。

阅读全文 »

搬运百度百科对putty的介绍:

PuTTY是一个Telnet、SSH、rlogin、纯TCP以及串行接口连接软件。较早的版本仅支持Windows平台,在最近的版本中开始支持各类Unix平台,并打算移植至Mac OS X上。

随着Linux在服务器端应用的普及,Linux系统管理越来越依赖于远程。在各种远程登录工具中,Putty是出色的工具之一。Putty是一个免费的、Windows 32平台下的telnet、rlogin和ssh客户端,但是功能丝毫不逊色于商业的telnet类工具。

阅读全文 »

Baidu运维的1面挂掉了挂掉了挂掉了……

Baidu面试的安排很棒,无论是休息区的布置,还是面试的通知步骤,都很人性化,很能反映一个国际知名企业的作风,我对baidu的好感+1。

阅读全文 »

2015/09/26更新,题目链接目前已经失效了,具体的题目自行百度吧。

最近刷了一下PAT的题目,主要刷了一套C语言基础。

这套题偏向基础,主要考察变量,循环,条件,数组,指针初步和结构体,后面的链表等内容没有涉及,解题主要从7月中旬开始,总共花费了大概2周的时间,对C语言的很多知识点做了回顾。

因为PAT属于OnlineJudge,出现“部分错误”时往往难以判断错误出现在哪里,所以有的题目提交了多次以确定测试点的测试内容,实在找不出问题的再Google看一下CSDN或者其他网站的解题思路,与自己的做比较,最终完整解决了85道题目中的接近80道。

这套题目中比较难的有:

  1. 说反话
  2. 复数四则运算
  3. 简易连连看
  4. 猴子选大王
  5. 猜数字游戏

总的来说,解决这些问题对于我这个外行来说还是略费劲的,不过收获也是蛮大的,下一步还要补一下数据结构方面的东西。

就到这里吧。

关于debian

debian是最具影响力的linux发行版之一,以稳定著称,许多其他的发行版的开发都以其为基础。debian使用apt-get进行包管理,因其安装较Ubuntu麻烦,属于已经入门linux者进行深入学习的选择之一吧。

虚拟机安装debian8之前

现在linux更多是作为一个辅助工具集,而且一些工作离不开Windows,所以使用VirtualBox虚拟机安装debian,选择的是debian的最新版本8.0,去官网选择了debian-8.0.0-i386-DVD-1.iso镜像。
(DVD镜像相较于LiveCD,包含更多常用软件,是更好的选择。)

配置一个基本能用的debian8

1.安装DVD-1.iso的debian系统

VirtualBox安装系统的过程很简单,安装debian也一样,只需要创建虚拟机后选择ISO启动然后一路next就行。其中硬盘分区需要注意,根据自己需要设置大小,我给虚拟机总共分了22GB,如果要在虚拟机中安装大型软件(比如我安装了Texlive完整版)的话,需要把/分区分大一些,或者只分一个/区。别的无需多言。

2.通过DVD-1.iso安装必要工具

安装完成,进入debian虚拟机,会发现分辨率不合适,没有Vim,sudo命令找不到和没有中文输入法之类的问题。所以需要挂载刚才安装用的那个DVD的ISO,安装一些DVD中的软件,并做些设置,为从官方源安装软件做准备,具体操作流程如下:

  • 执行su切换到ROOT权限,再执行:
apt-get install sudo vim git
apt-get install build-essential linux-headers-$(uname -r)
apt-get install fcitx-frontend-gtk3
#这一步会通过DVD安装必要的编译工具,Vim,Git,sudo和fcitx输入法的前端。
  • 修改/etc/sudoers,在workzmp ALL=(ALL:ALL) ALL后面添加一行,内容即yourusername ALL=(ALL:ALL),然后保存退出。
#这一步会解决之后使用"sudo"出现不在suoder用户组中的问题
  • 退出su,撤出DVD-1.iso。

安装VirtualBox增强工具

  • 挂载VirtualBox的增强工具ISO(名为VBoxGuestAdditions.iso),安装解决分辨率和共享文件夹问题的增强工具。
cd /media/cdrom0 #即上述ISO的挂载位置
sudo sh ./VBoxLinuxAdditions.run
#如果出问题,根据提示,找到是否没有安装好上面的"build-essential"和"linux-headers-$(uname -r)"
  • 重启,全屏,看分辨率是否能够自适应,共享文件夹是否显示。
  • 上面能够看到的共享文件夹目前尚无法进行复制移动等操作,需要设置权限,将用户添加到vboxsf组中重启即可,默认的共享目录在/media/sf_*
sudo adduser yourusername vboxsf

通过官方源安装必要工具

  • 修改源列表,添加并更新官方源。
sudo vim /etc/apt/sources.list
#去ustc的linux镜像或者其他镜像站查看debian的源列表,加在上面的文件中,执行更新。
sudo apt-get update
  • 安装fcitx的ui包,设置一番重启即可正常使用fcitx中文输入法
sudo apt-get install fcitx-ui-classic fcitx-ui-light 

配置个性化开发环境的debian8

Java

sudo apt-get install openjdk-7-jdk openjdk-7-doc

Ruby+gem+jekyll

sudo apt-get install ruby ruby-dev gem
#执行"ruby -v"查看ruby版本
#执行"gem -v"查看gem版本
sudo apt-get install jekyll rake
#执行"jekyll -v"或者"gem list"查看jekyll是否安装成功

Node.js+npm+gitbook+pandoc

sudo apt-get install nodejs nodejs-legacy npm
sudo npm install -g cnpm --registry=https://registry.npm.taobao.org
sudo cnpm install gitbook-cli -g
sudo gitbook versions:install latest
sudo gitbook versions:install 2.0.1
#"gitbook versions"查看gitbook的最新版和我需要的2.0.1版本是否安装成功。
#"sudo gitbook serve -v 2.0.1"可以以指定版本的gitbook运行serve
sudo apt-get install pandoc
#linux下最强的文档格式转换工具,支持tex,md,html,pdf

尾声

经过上述配置,现在的debian8既可以正常全屏,输入中文,使用git和vim以及安装软件包;又可以用jekyll写博客站点,使用gitbook和tex做网站电子书,用C编程……先到这里吧。

2015.5.23最后更新