awkprintf感觉很好用,print好用多了。
和c的printf用法一样。
awk -F# '{printf("insert into info values("%s","%s","%s");n", $1, $2, $3)}' sqlfile.sql
度娘,你的编辑器啥时候好用啊。
awkprintf感觉很好用,print好用多了。
和c的printf用法一样。
awk -F# '{printf("insert into info values("%s","%s","%s");n", $1, $2, $3)}' sqlfile.sql
度娘,你的编辑器啥时候好用啊。
用sqlplus 连接数据库,提示这个错误。
原因两个问题
1. sid问题,sid最多为8位。
2.tns 是否监听
可以看一下这个文件
network/admin/tnsnames.ora
例如;
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 19f9014c5ca444d)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
这里面写的清清楚楚。再netstat -an 一下看看端口。相信你懂的。
dba_开头
dba_users 数据库用户信息
dba_segments 表段信息
dba_extents 数据区信息
dba_objects 数据库对象信息
dba_tablespaces 数据库表空间信息
dba_data_files 数据文件设置信息
dba_temp_files 临时数据文件信息
dba_rollback_segs 回滚段信息
dba_ts_quotas 用户表空间配额信息
dba_free_space数据库空闲空间信息
dba_profiles 数据库用户资源限制信息
dba_sys_privs 用户的系统权限信息
dba_tab_privs用户具有的对象权限信息
dba_col_privs用户具有的列对象权限信息
dba_role_privs用户具有的角色信息
dba_audit_trail审计跟踪记录信息
dba_stmt_audit_opts审计设置信息
dba_audit_object 对象审计结果信息
dba_audit_session会话审计结果信息
dba_indexes用户模式的索引信息
user_开头
user_objects 用户对象信息
user_source 数据库用户的所有资源对象信息
user_segments 用户的表段信息
user_tables 用户的表对象信息
user_tab_columns 用户的表列信息
user_constraints 用户的对象约束信息
user_sys_privs 当前用户的系统权限信息
user_tab_privs 当前用户的对象权限信息
user_col_privs 当前用户的表列权限信息
user_role_privs 当前用户的角色权限信息
user_indexes 用户的索引信息
user_ind_columns用户的索引对应的表列信息
user_cons_columns 用户的约束对应的表列信息
user_clusters 用户的所有簇信息
user_clu_columns 用户的簇所包含的内容信息
user_cluster_hash_expressions 散列簇的信息
v$开头
v$database 数据库信息
v$datafile 数据文件信息
v$controlfile控制文件信息
v$logfile 重做日志信息
v$instance 数据库实例信息
v$log 日志组信息
v$loghist 日志历史信息
v$sga 数据库SGA信息
v$parameter 初始化参数信息
v$process 数据库服务器进程信息
v$bgprocess 数据库后台进程信息
v$controlfile_record_section 控制文件记载的各部分信息
v$thread 线程信息
v$datafile_header 数据文件头所记载的信息
v$archived_log归档日志信息
v$archive_dest 归档日志的设置信息
v$logmnr_contents 归档日志分析的DML DDL结果信息
v$logmnr_dictionary 日志分析的字典文件信息
v$logmnr_logs 日志分析的日志列表信息
v$tablespace 表空间信息
v$tempfile 临时文件信息
v$filestat 数据文件的I/O统计信息
v$undostat Undo数据信息
v$rollname 在线回滚段信息
v$session 会话信息
v$transaction 事务信息
v$rollstat 回滚段统计信息
v$pwfile_users 特权用户信息
v$sqlarea 当前查询过的sql语句访问过的资源及相关的信息
v$sql 与v$sqlarea基本相同的相关信息
v$sysstat 数据库系统状态信息
all_开头
all_users 数据库所有用户的信息
all_objects 数据库所有的对象的信息
all_def_audit_opts 所有默认的审计设置信息
all_tables 所有的表对象信息
all_indexes所有的数据库对象索引的信息
session_开头
session_roles 会话的角色信息
session_privs 会话的权限信息
index_开头
index_stats 索引的设置和存储信息伪表
dual 系统伪列表信息
如果在安装Oracle的时候出现如下问题:创建数据库完成让你输入密码的时候弹出"ora-00988 缺少或无效口令"的对话框如下图
这是因为Oracle对密码的要求如下:
系统用户(SYS、SYSTEM)口令长度不能小于7个字符第一个字符不能为数字且全部字符中应该为字母和数字混合
解决方法:
运行 cmd 按如下输入命令 sqlplus / as sysdba ——— 注意以上的语句中"/"两边都要有空格哦!——— 以sys登陆 alter user 用户名 account unlock; ——— 解除锁定 alter user 用户名 identified by 密码;————-修改密码然后用你改好的密码登陆就行 举例:sqlplus / as sysdbaalter user sys account unlock;alter user sys identified by manager;希望你看过本文章后能顺利解决问题!
如果看不在管理员在不在线,遇到用户登录提示的软件就挂了。
光忘。
1.query user
2.tasklist /V 看进程信息,
在生产环境中,系统被入侵后,黑客会放置自己的后门。LKM后门和传统的后门不一样,它可以通过隐藏进程、端口、文件的方式隐藏自己,不被管理员轻易发现,也就是常说的rootkit技术。
LKM是什么?load kernel module,可加载内核模块的缩写。
xlkm一个脚本,通过对准上线机器现加载内核模块进行备份,来判别模块是否替换、篡改。
主要思路就是:列出系统加载的内核模块并备份,对现加载的模块的md5校验并备份其信息,然后进行对比。
实现起来比较简单,我shell也不是很好,大家就凑活着看吧。
#!/bin/bash
#code:key1088
#mail:key1088@163.com
#bash –version
#GNU bash, version 3.2.25(1)-release (i686-redhat-linux-gnu)
#Copyright (C) 2005 Free Software Foundation, Inc
if [ $(whoami) != "root" ];
then
echo "Not root"
exit 0
fi
xlkmroot=/usr/local/xlkm
help(){
echo -e " 33[32m List:"
echo "[1.Start LKM List Backup]"
echo "[2.Test LKM List Change]"
echo "[3.Delete All Backup]"
echo "[4.Quit]"
echo -e " 33[0m"
}
SETUPXLKM(){
if test -d $xlkmroot ;then
echo "LKM exist Backup!!"
exit 1
fi
mkdir $xlkmroot
chmod 700 $xlkmroot
}
DELXLKM(){
rm -rf $xlkmroot
echo
echo -e " 33[34mDelete XLKM Backup Sccessfully 33[0m"
echo
}
START(){
while [ -z $passwd ]
do
echo
echo -n "Input encrypt passwd[No Null]:"
read passwd
done
echo "WAITing….."
lsmod > $xlkmroot/lkmlist.main
for i in $(modprobe -l)
do
md5sum $i >> $xlkmroot/lkmfile.md5.main
done
cd $xlkmroot
zip -P $passwd mainfile.zip ./.main > /dev/null
rc=$?
if [ "$rc" == 0 ];
then
echo
echo -e " 33[34mLKM List Backup Successfully! 33[0m"
echo
else
echo
echo -e " 33[34mBeijule! Error! 33[0m"
echo
fi
rm -f $xlkmroot/lkm > /dev/null
}
LKMCHANGE(){
echo "Test LKM Change"
cd $xlkmroot
while [ "$ra" != 0 ]
do
echo
echo -n "Input encrypt passwd[No Null]:"
read passwd
unzip -P $passwd mainfile.zip > /dev/null 2>&1
ra=$?
if [ "$ra" != 0 ];then echo "Invalid password!! "; fi
done
echo "WAITing….."
lsmod > $xlkmroot/lkmlist.new
for i in $(modprobe -l)
do
md5sum $i >> $xlkmroot/lkmfile.md5.new
done
echo "LKM List Change:"
echo -e " 33[31m"
diff $xlkmroot/lkmlist.main $xlkmroot/lkmlist.new
echo -e " 33[0m"
echo "LKM File Md5 Change:"
echo -e " 33[31m"
diff $xlkmroot/lkmfile.md5.main $xlkmroot/lkmfile.md5.new
echo -e " 33[0m"
rm -f *.new .main
}
while :
do
help
echo -n "Input List num:"
read x
case "$x" in
1)
SETUPXLKM
START
;;
2)
LKMCHANGE
;;
3)
DELXLKM
;;
4)
exit 0
;;
)
echo -e " 33[31mError !!!!!"
echo -e "Pleae input [1-4] list option 33[0m"
;;
esac
done
systime函数返回从1970年1月1日开始到当前时间(不计闰年)的整秒数
利用strftime()函数格式化时间
实例:
$ awk '{ now = systime(); print now }'strftime函数使用C库中的strftime函数格式化时间。格式如下:
systime( [format specification][,timestamp] )Table 3. 日期和时间格式说明符
实例:
线上想用zabbix做监控。php安装的时候有很多模块没有安装,mbstring就是其中一个,所以现在要扩展安装一下。
就拿mbstring为例吧
环境php5.2.14, 不支持mbstring扩展
上传php源码,tar 之。
shell>cd /usr/local/src/php-5.2.14/ext
shell>ls #下面都模块源码,想安装那个就进那个目录
shell>cd mbstring
shell>phpize
shell>./configure --with-php-config=/usr/local/php/bin/php-config #指定php-config文件
shell>make
shell>make install #看这一步的输出可以看出是模块的目录,我的是/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613
shell>vim /usr/local/php/lib/php.ini #编辑php.ini添加扩展目录。
extension_dir=/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613
extension=mbstring.so
重启一个web服务,用phpinfo看看是否支持mbstring。
转自:www.chinaunix.net。作者:老表
在工作中经常遇到给两台主机建立ssh信任,手动建立太费事了,索性胡乱写了个脚本ssh_trust.sh来自动建立信任:
1.下载相应的字符集。
2.在服务器上,进入/usr/share/fonts/目录下
新建一个目录,随便了。myfont
3。复制字符集到myfont目录。
进入myfont
运行下边的命令更新字符集。
mkfontscale
mkfontdir
fc-cache
cat fonts.dir 看看支持的字符。
4.如果要修改系统的话,就LANG=‘字符集’