- 博客(19)
- 资源 (2)
- 收藏
- 关注
原创 SHELL 推送数据
推送数据核心代码function doit(){FILES=`find ${SRCDIR} -mmin -80 -name '*.csv'`for FILE in ${FILES}doFILE=${FILE##*/}num=`grep -c ${FILE} ${okfile}`if [ "x${num}" == "x0" ];thenlftp -u ${USER},${PASSWORD} ftp://${IP}:${PORT} <<EOFcd ${DESDIR}/lcd.
2021-08-31 17:13:26
232
1
原创 SHELL 自动创建文件和路径
如果路径不存在,就创建路径;文件不存在,就创建文件if [ ! -d ${logdir} ];then mkdir -p ${logdir}fiif [ ! -f ${check_source_file} ];then touch ${check_source_file}fi
2021-08-31 15:51:25
1277
原创 SHELL 标准输入输出
命令 标准输出 标准错误>/dev/null 2>&1 正确丢弃 错误丢弃2>&1 >/dev/null 正确丢弃 错误输出1>/dev/null 正确丢弃 错误输出2>/dev/null 正确输出 错误丢弃
2021-08-12 10:36:32
355
原创 SHELL MV
MV命令详解:mv source_file(文件) target_file(文件) 将源文件名 source_file 改为目标文件名 target_filemv source_file(文件) target_file(目录) 将文件 source_file 移动到目标目录 target_file中mv source_directory(目录) target_file(目录) 目录名 target_file已存在,将 source_directory 移动到目录名 target_file中;
2021-08-10 14:31:38
226
原创 SHELL 离删库只差一步之遥
今天导入数据,错用!mv命令,使用lftp操作本地服务器,修改目录名导致代码示例:# 遍历两分钟内接收到的文件,获取文件名,将文件移动备份到备份目录for i in `find ${source_dir} -mmin -2 | grep -v tmp | sort`doecho ${i} file=${i##*/} source_nums=`grep -c ${file} ${check_source_file}` if [ ${source_nums} == 0 ];then .
2021-08-10 14:00:16
78
原创 SHELL RSYNC
# 源目录加了斜线,效果就是将该目录下的内容传输到目标目录下。目标目录如果不存在,会自动创建目标目录。rsync -avlK ./test/ root@192.168.25.102:/tmp/test/# 源目录不加斜线,效果就是将该目录传输到目标目录下。rsync -avlK ./test root@1192.168.25.103:/tmp/test/-a, --archive 归档模式,表示以递归方式传输文件,并保持所有文件属性,等于-rlptgoD。-e, --rsh=command .
2021-08-09 15:57:55
195
原创 SHELL FIND命令
# 查询5天访问的文件find -atime 5# 查询超过5天且少于10天的文件find -mtime +5 -mtime -10# 查询过去1小时内修改文件find -cmin -60# 查询最近1小时内修改文件find -mmin -60# 查询最近一小时内访问的文件find -amin -60# 在特定路径查找指定类型文件find -type f ...
2021-08-09 15:47:26
170
原创 ORACLE分母为0的情况处理
描述:divisor is equal to zero”处理方法:# decode(分母,0,1,分母)SELECT CELL_ID,SUM(REGIST_ALL_NUM) REGIST_ALL_NUM,SUM(REGIST_SUC_NUM) REGIST_SUC_NUM,SUM(REGIST_SUC_NUM) / decode(SUM(REGIST_ALL_NUM),0,1,SUM(REGIST_ALL_NUM)) REGIST_SUC_RATE_NUMFROMDWS_XN_2021.
2021-08-09 11:09:06
2004
原创 SHELL LFTP SFTP推送数据到目标目录
#!/bin/shsource_dir=/data1/satest_dir=/data1/testremote_dir=/data1/saHOST=sftp://192.168.102.1USER=PASS=#源文件比对记录check_source_file=/data1/check_source_file.txtif [ ! -f ${check_source_file} ];then touch ${check_source_file}fi# 限定100
2021-08-05 18:24:23
429
原创 SHELL文件中限定行数
限定文件行数#!/bin/bash# 定义一个文件check_source_file=/data1/check_source_file.txt# 如果文件不存在,创建文件if [ ! -f ${check_source_file} ];then touch ${check_source_file}fi# 限定1000条数据LIMIT_NUM=1000function cleanLog(){#源文件清理LOGFILE=${check_source_file}POI.
2021-08-05 18:20:28
519
转载 SHELL中#*,##*,#*,##*,% *,%% *的含义及用法
介绍下Shell中的${}##和%%使用范例,本文给出了不同情况下得到的结果。假设定义了一个变量为: 代码如下:# file=/dir1/dir2/dir3/my.file.txt 可以用${ }分别替换得到不同的值:${file#/}:删掉第一个 / 及其左边的字符串:dir1/dir2/dir3/my.file.txt${file##/}:删掉最后一个 / 及其左边的字符串:my.file.txt ${file#.}:删掉第一个 .及其左边的字符串:file.txt ${file##
2021-08-05 18:17:45
2518
原创 SHELL sed -i 测试
sed -i 删除指定行数数据sed -i测试1. touch a 放10行数据2. cat a 查看a中数据3. cat a | wc -l 查看a中有几行数据5. sed -i "1,3"d a 切割1-3行数据,剩下4-10行6. 再次查看 cat a7. cat a |wc -l
2021-08-04 16:55:31
147
原创 SHELL实时追加两分钟内目录文件,拷贝到另一个目录
原数据目录:/data1/sa/a_851__110_20210803183312_8286.txt拷贝目标目录:/data1/test目的:追加两分钟内目录中的文件,然后把文件实时拷贝到目标目录#!/bin/bashfor i in `find /data1/sa -mmin -2`do# 查看文件中有几行数据sourceFile=`cat /data1/test/check_source_file.txt| wc -l`# echo "${i##*/}"# echo "${s.
2021-08-04 16:21:13
245
原创 GREP比较两个文本相同不同行
GREP比较两个文本相同不同行# 找出b文件中不同于a的行grep -v -wvf a b >>a# 找出两个文件中相同的行grep -wf a b# 两个文本中的相同行grep -Fxf a b
2021-08-03 17:52:54
542
原创 问题一: SHELL脚本导入文件实时追加还是全部导入
问题描述:SHELL脚本在获取一个目录中的文件,监控这个目录,然后实时导入到另一个目录,在导入的时候是追加的导入还是只要有一个文件就把这个目录下所有文件删了,然后整个导入回答:可以把已经导入的文件名写到一个文本里,这样每次导入前判断下,就不会重复导入了...
2021-08-03 16:35:08
83
原创 SHELL从目录下拷贝文件到另一个目录下的两种方法
shell 从目录下拷贝文件到另一个目录下的两种方法方法一: cat查询文件中的目录通过ls重定向方法二: find查找路径下的文件进行遍历方法一: cat查询文件中的目录通过ls重定向echo "`cd /home/hadoop/test1/data`"echo "`ls * >b`"cat b | grep -v "tmp"|grep -v "temp" |grep -v "cmd"> cfor i in `cat c`;do{if [ $? -eq 0 ];thencp
2021-08-03 15:14:23
9382
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人