posted in Linux相关 

2015-09-26更新:
现在发现要实现如下的功能,完全有现成的命令可以使用:

如递归查找名字含关键字的文件,使用find . -name "*keyword*"
如递归查找内容含关键字的文件,使用grep -Ir keyword .

之前写的程序就当做练手好了 :)

Read on →
posted in Linux相关 

原生GDB不能支持STL调试,要进行STL调试必须进行一些配置才行,但网上的一些配置说明已经过时了,因此重新总结一下。

环境

Ubuntu 14.04 32位

GDB 7.7

步骤

  1. Check-out最新的调试工具到本地一个文件夹下,比如 ~/yourname/gdb_printers

    svn co svn://gcc.gnu.org/svn/gcc/trunk/libstdc++-v3/python

  2. 将下列内容添加到 ~/.gdbinit 文件夹中, 其中的路径名改成上一步Check-out的工具对应的路径名

    python
    import sys
    sys.path.insert(0, '/home/yourname/gdb_printers/python')
    sys.path.append("/home/yourname/gdb_printers/python/libstdcxx/v6")
    from libstdcxx.v6.printers import register_libstdcxx_printers
    end

使用效果

如果代码是这样的:

vector a = {2, 3, 6, 7};

调试效果是这样的:

(gdb) p a
$1 = std::vector of length 4, capacity 4 = {2, 3, 6, 7}

参考

http://sourceware.org/gdb/wiki/STLSupport

http://stackoverflow.com/questions/26205564/gdb-pretty-printing-importerror-no-module-named-printers

http://blog.csdn.net/fdl19881/article/details/8710636

本文章迁移自http://blog.csdn.net/timberwolf_2012/article/details/40478407

posted in Linux相关 

下载了APUE的源码,在文件夹apue.3e下运行make时会抛出各种错误提示,在此记录各问题解决方案。环境是Linux。

错误提示:  ../systype.sh: Permission denied

问题解决: chmod a+x systype.sh

错误提示: fixup.awk: Permission denied

问题解决: chmod a+x fixup.awk

错误提示: /usr/bin/ld: cannot find -lbsd

问题解决:

错误提示:

问题解决:

错误提示:

问题解决:

参考

http://bbs.csdn.net/topics/80447869

本文章迁移自http://blog.csdn.net/timberwolf_2012/article/details/40182817

posted in Linux相关 

简介

Windows下编写的代码(如C\C++\Java等)放到Linux下不能直接编译, 因为主要存在两个问题:

  1. Windows和Linux的行尾符不同, Windows下行尾符是"\n\r", 而Linux的行尾符是"\n"

  2. Windows下编码通常是GB2312, 而Linux中的编码通常是UTF-8。

所以编写了这个脚本文件用于将Windows下编写的源码转化为Linux下可用的源码, 

该脚本文件可以将 指定目录及其子目录 下指定 后缀名 的源文件进行转换。

使用方式

sudo apt-get install dos2unix
bash trans.sh 指定文件夹 要转换文件的拓展名

例如,

将/home文件夹及其子文件下所有java源文件进行转换

bash trans.sh /home java

代码

#!/bin/bash
#Program:
#   convert the text written in windows to the text usable in linux.
#Author:
#   Chen Zhongzheng
#History:
#   2014年09月03日20:17:36  v1.0
#TODO:
#   add a parameter to specify the origin encoding, eg. gb2312\cp936\gbk...

function recursion()
{
	cd $1
	for i in $(ls)
	do
		if [ -d "$i" ]; then
			recursion ``i ``2
		elif [ "``{i##*.}" = "``{2}" ]; then
			iconv -f cp936 -t utf-8 $i > temp_111
			mv temp_111 $i
			dos2unix $i
		fi
	done
	cd ..
}

if [ ! $# -eq 2 ]; then
    echo "usage: bash convert.sh directory_name extension_name"
elif [ ! -d $1 ]; then
	echo "usage: bash convert.sh directory_name extension_name"
else
	recursion ``1 ``2
fi










#!/bin/bash
#Program:
#   convert the text written in windows to the text usable in linux.
#Author:
#   Chen Zhongzheng
#History:
#   2015年12月04日21:33:29  v1.1
#TODO:
#   add a parameter to specify the origin encoding, eg. gb2312\cp936\gbk...

function recursion()
{
  cd $1
  for i in $(ls)
  do
    if [ -d "$i" ]; then
      recursion ``i ``2
    elif [ "``{i##*.}" = "``{2}" ]; then
      enca -L zh_CN -x UTF-8 $i
      dos2unix $i
    fi
  done
  cd ..
}

if [ ! $# -eq 2 ]; then
  echo "usage: bash convert.sh directory_name extension_name"
elif [ ! -d $1 ]; then
  echo "usage:  bash convert.sh directory_name extension_name"
else
  recursion ``1 ``2
fi

参考:

http://www.wenzizone.cn/?p=313

http://bbs.chinaunix.net/thread-624345-1-1.html

http://blog.csdn.net/rainharder/article/details/6030255

本文章迁移自http://blog.csdn.net/timberwolf_2012/article/details/38980201

posted in Linux相关 

问题描述:

Linux英文环境下,Chrome的印象笔记剪藏插件只能登陆Evernote,却登陆不了印象笔记。

解决方案:

经多方探索,解决方案如下:

  1. 进入路径(不同版本印象笔记插件有所不同)

~/.config/google-chrome/Default/Extensions/pioclpoplcdbaefihamjohnefbikjilc/6.1.1_0/js/common

  1. 打开Bootstrap.js

将其中的"zh-CN"替换为"utf-8".

解决后截图如下:

SouthEast

本文章迁移自http://blog.csdn.net/timberwolf_2012/article/details/22953235

posted in Linux相关 

Already solved here and here.
From the terminal:

sudo apt-get install indicator-datetime
sudo dpkg-reconfigure --frontend noninteractive tzdata
sudo killall unity-panel-service

Then logout & login from the graphic session.
If the clock is still hidden/grayed out:

Time&Date panel --> Clock --> Show a clock in the menu bar

If it still doesn't work report a bug on Launchpad.
*edited to solve a bigger slice of problems.

转自:http://askubuntu.com/questions/357266/how-to-show-time-in-ubuntu-13-10

本文章迁移自http://blog.csdn.net/timberwolf_2012/article/details/17029931

/** * RECOMMENDED CONFIGURATION VARIABLES: EDIT AND UNCOMMENT THE SECTION BELOW TO INSERT DYNAMIC VALUES FROM YOUR PLATFORM OR CMS. * LEARN WHY DEFINING THESE VARIABLES IS IMPORTANT: https://disqus.com/admin/universalcode/#configuration-variables*/ /* var disqus_config = function () { this.page.url = PAGE_URL; // Replace PAGE_URL with your page's canonical URL variable this.page.identifier = PAGE_IDENTIFIER; // Replace PAGE_IDENTIFIER with your page's unique identifier variable }; */ (function() { // DON'T EDIT BELOW THIS LINE var d = document, s = d.createElement('script'); s.src = 'https://chenzz.disqus.com/embed.js'; s.setAttribute('data-timestamp', +new Date()); (d.head || d.body).appendChild(s); })();