摘要: 1、为什么shell脚本第一行要用#!/bin/sh?告诉操作系统, 此脚本的解释器为 /bin/sh 这个可执行文件如果你的脚本用 bash, ksh, 解释, 第一行就应该是#!/bin/bash#!/bin/ksh或者, 你自己定义一种脚本语言, 再自己写个解释器去执行它, 比如说叫 xshell,放在 /usr/local/bin 下, 你的脚本第一行就应该是#!/usr/local/bin/xshell如果没有这样定义的第一行, 不同 unix 类操作系统会用默认 shell 来解释脚本, 如 unix 往往是 sh, linux 往往是用 bash. 阅读全文
posted @ 2013-09-16 18:28 放空自己 阅读(227) 评论(1) 推荐(0) 编辑
摘要: 1、可以实时的得到新追加到文件中的信息,常用来跟踪日志文件tail -f RunLog。2、echo命令的功能是在显示器上显示一段文字,一般起到一个提示的作用。该命令的一般格式为: echo [ -n ] 字符串其中选项n表示输出文字后不换行;字符串能加引号,也能不加引号。用echo命令输出加引号的字符串时,将字符串原样输出;用echo命令输出不加引号的字符串时,将字符串中的各个单词作为字符串输出,各字符串之间用一个空格分割。eg:[@djt_133_217 bin]# echo a ba b[@djt_133_217 bin]# echo "q r"q r3、cat主要有 阅读全文
posted @ 2013-09-16 15:55 放空自己 阅读(142) 评论(0) 推荐(0) 编辑
摘要: 速度:drop>truncate>delete1、TRUNCATE TABLE 在功能上与不带 WHERE 子句的 DELETE 语句相同:二者均删除表中的全部行。但 TRUNCATE TABLE 比 DELETE 速度快,且使用的系统和事务日志资源少。 2、truncate和delete只删除数据不删除表的结构(定义) drop语句将删除表的结构被依赖的约束、触发器、索引;依赖于该表的DELETE 语句每次删除一行,并在事务日志中为所删除的每行记录一项。TRUNCATE TABLE 通过释放存储表数据所用的数据页来删除数据,并且只在事务日志中记录页的释放。 TRUNCATE TA 阅读全文
posted @ 2013-09-09 15:43 放空自己 阅读(152) 评论(0) 推荐(0) 编辑
摘要: 速度:drop>truncate>delete1、TRUNCATE TABLE 在功能上与不带 WHERE 子句的 DELETE 语句相同:二者均删除表中的全部行。但 TRUNCATE TABLE 比 DELETE 速度快,且使用的系统和事务日志资源少。 2、truncate和delete只删除数据不删除表的结构(定义) drop语句将删除表的结构被依赖的约束、触发器、索引;依赖于该表的DELETE 语句每次删除一行,并在事务日志中为所删除的每行记录一项。TRUNCATE TABLE 通过释放存储表数据所用的数据页来删除数据,并且只在事务日志中记录页的释放。 TRUNCATE TA 阅读全文
posted @ 2013-09-09 15:42 放空自己 阅读(215) 评论(0) 推荐(0) 编辑
摘要: 1、DML:数据操纵语言。执行完需要提交,有回滚。select、insert、update、delete、callexplain plan :Oracle RDBMS执行每一条SQL语句,都必须经过Oracle优化器的评估。所以,了解优化器是如何选择(搜索)路径以及索引是如何被使用的,对优化SQL语句有很大的帮助。Explain可以用来迅速方便地查出对于给定SQL语句中的查询数据是如何得到的即搜索路径(我们通常称为Access Path)。从而使我们选择最优的查询方式达到最大的优化效果。lock table:锁,用于并发控制2、DDL:数据定义语言。用于定义和管理sql数据库的所有对象的语言。 阅读全文
posted @ 2013-09-09 11:30 放空自己 阅读(220) 评论(0) 推荐(0) 编辑
摘要: 如果一个头文件被 #include 到一个以上的源文件里,这个头文件中所有的定义就会出现在每一个有关的源码文件里。这会使它们里的符号被定义一次以上,从而出现连接错误。解决办法就是不要在头文件里定义变量。你只需要在头文件里声明它们,然后在适当的源码文件(应该#include那个头文件的那个)里定义它们一次。extern告诉编译器其所声明的符号的存在,并不会使编译器分配贮存空间。当做一个声明而不是做定义的时候,在声明前放一个关键字“extern”。在模块的头文件中对本模块提供给其它模块引用的函数和全局变量以关键字extern声明。例如,如果模块B欲引用该模块A中定义的全局变量和函数时只需包含模块A 阅读全文
posted @ 2013-08-13 17:29 放空自己 阅读(226) 评论(1) 推荐(0) 编辑
摘要: 编写一个main.cpp,linux 下执行步骤:(1)g++ mian.cpp./a.out后缀名是.cpp,编译完成后的可执行文件一般是a.out,也可以自己指定。(2) 编译命令(C):gcc main.cpp -o main编译命令(C++):g++ main.cpp -o main-o后面是输出文件名,一般取名和程序名一样。运行: ./maing++与gcc的区别:1. 两者都可以编译c/c++文件,后缀为.c的,gcc把它当作是C程序,而g++当作是c++程序;后缀为.cpp的,两者都会认为是c++程序。2. 编译阶段,g++会调用gcc,对于c++代码,两者是等价的,但是因为gc 阅读全文
posted @ 2013-08-13 10:16 放空自己 阅读(237) 评论(0) 推荐(0) 编辑
摘要: 本文内容来自http://blog.csdn.net/jl19861101/article/details/55828411. LDAP Server1.1. 安装主要安装一下套件:代码:# apt-get install slapd ldap-utils migrationtools按照提示输入相关信息,这样在重新配置的时候就可以作较少的工作了重新配置代码:#dpkg-reconfigure slapd大致如下:代码:Omit OpenLDAP server configuration? ... NoDNS domain name: ... debuntu.local //根据自己需要... 阅读全文
posted @ 2013-07-19 16:10 放空自己 阅读(1542) 评论(0) 推荐(0) 编辑
摘要: ubuntu的root默认是禁止使用的,在安装的时候也没有要求设置root的密码。要使用,给root设置密码就行了,sudo passwd root 。如果只是普通用户密码忘了,用root就可以修改。如果root密码忘了就进入单用户模式。进入单用户模式: 1,在开机引导到GRUB等待界面(GRUB loading, please wait…)这里的时候按下ESC键来进入启动菜单,选择相应内核版本的Recovery Mode,按e键进入编辑状态。 2,移动光标,将”rorecovery nomodeset“修改为"rwsingleinit=/bin/bash"以后 按ctrl 阅读全文
posted @ 2013-07-09 11:26 放空自己 阅读(25377) 评论(2) 推荐(4) 编辑
摘要: 如果你是一个java程序员,那么你肯定知道Executable Jar File,也就是可以运行的JAR包,双击这个文件就可以运行你的程序,但有时候双击后会有命令窗口闪动,但是速度太快,看不清窗口里面的内容,里面的内容其实很简单,是找不到指定的类异常,那么为什么会出现这种情况呢?这种情况往往发生在安装某种软件之后就会遇到,尤其是在装完某种压缩管理软件的时候,这种软件会自动关联很多种文件,这些文件是能过扩展名来分类的,如果这种软件将jar文件也关联上,那么就会产生上述问题。原因是这种软件在安装时更改了系统中的以jar为扩展名的文件的open动作。要想恢复也是很容易的:1. 打开我的电脑,打开工具 阅读全文
posted @ 2013-06-14 15:46 放空自己 阅读(786) 评论(0) 推荐(0) 编辑