通常 Linux 下的各种命令都有许多的命令行参数可以选择,比如:
gcc -g -lm foo.c -o foo
getopt()就是用来分析命令行参数的函数。
在继续讨论getopt 之前,先要明确两个概念:选项(option) 和 选项参数(argument)。
在上面的例子中,-g 中的 g,-o 中的 o 还有 -lm 中的 l 就是选项,而 -lm 中的 m 就是 l 的选项参数,-o foo 中的 foo 就是 o 的选项参数。因此,我们知道了选项有两种,一种是带选项参数的[......]
Tag Archives: Linux
Linux中解析命令行参数 (getopt_long用法)
转载自:http://yangrenjun.iteye.com/blog/624549
getopt_long支持长选项的命令行解析,使用man getopt_long,得到其声明如下:
#include <getopt.h>
int getopt_long(int argc, char * const argv[],
const char *optstring,
const struct option *longopts, int *longindex);[......]
关于bash自动补全时出现“-bash: warning: setlocale: LC_CTYPE: cannot change locale”的解决方法
换了一个Openvz的vps,可能同母鸡的人发Ticket要求换locales来着,原来都是UTF8,用的很好,非要改成gbk,我就无语了。
这样在tab自动补全时候经常出现类似的错误如下:
-bash: warning: setlocale: LC_CTYPE: cannot change locale (zh_CN.UTF-8)
解决方法,编辑/etc/profie,添加一行,如下:
sudo vim /etc/profile
#添加一行
export LC_ALL=[......]
Linux下Oracle客户端中文乱码问题
感谢这篇文章:http://liushuai-238.iteye.com/blog/362610
1、获得服务器上的字符集
首先登录上sqlplus,查看服务器上的字符集。
sqlplus user/pass@ip/sid
#得到如下结果:
SQL> select userenv('language') from dual;
USERENV('LANGUAGE')
--------------------------------------------------[......]
Linux下配置OCI(Oracle调用接口)
由于我们的数据库有专门的机器,所以我自己的机器并没有装Oracle。
Oracle提供的C++访问方式是,通过OCI(Oracle Call Interface,简称OCI)。
这个如果单独安装非常的麻烦(主要是很trick。。),下面以Oracle 11gr2为例,介绍Linux下配置OCI。
1、安装Oracle client驱动
Oracle官方的那个神马600MB的开发包就别想了,装了三次,都失败,什么库都没装上!
翻了半天,使用Google Hacking找出来这[......]