![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
linux
文章平均质量分 91
lx6766
这个作者很懒,什么都没留下…
展开
-
linux ftp在shell脚本中的调用方式问题,即便ftp失败了,$?=0
下面这段代码,不论放在命令行还是脚本中,ftp超时错误,但结果都返回0这里是脚本内部执行错误,但是外层调用ftp是成功的,所以这种异常如何捕获呢?这里即便加上-e遇到错误也捕获不到,而下面的判断也会走成功#!/bin/bash -eif [[ $? == 0 ]];then echo "成功"else echo "失败" exitfi...原创 2019-08-16 18:42:20 · 1400 阅读 · 3 评论 -
linux :invalid option错误
在windows上编辑的shell脚本,scp到linux服务器上后,执行./xx.sh用vim打开文件后:文件为dos格式,在vim编辑器的模式下,使用set ff=unix的方式实现dos格式转化为unix格式...原创 2019-08-16 17:17:13 · 17905 阅读 · 0 评论 -
ftp连接的ip由内网地址改为公网地址后,不能上传文件了,但可以操作查看
ftp内网地址,使用公司网络可以访问到,但是通过正式环境的服务器就不可以改为使用ftp的公网地址,并且将正式环境服务器的公网ip让对方加入白名单后,可以访问了,但是,只能操作cd, ls等命令,不能执行上传文件操作后来改为passive off后,可以上传了原因:ftp服务器虽然没有做更改设置,但是由内网变公网,防火墙的原因,ftp的命令端口21,数据端口成了动态的了,这样使用被...原创 2019-08-21 17:09:04 · 1697 阅读 · 0 评论 -
linux zip命令
1如何解压lsx@lsx MINGW32 /f/版权数据分析系统$ unzip 01.zipArchive: 01.zip[01.zip] click01.json password: inflating: click01.json2 如何做md5加密 zippwd=`echo -n $zipkey|md5sum | awk '{print $1}'`3 如何加密...原创 2019-08-21 17:04:47 · 404 阅读 · 0 评论 -
linux 常用操作
1遍历文件时,返回的是相对路径,不是文件名 ,要注意!!!2遍历文件操作,重命名,压缩文件 i=1 for subfile in `ls $hdfs_dir/$unzipfile_name/*.json` do echo subfile=$su...原创 2019-08-21 17:02:35 · 86 阅读 · 0 评论 -
linux case语句
case "$1" in start) start ;; stop) stop ;; status) status ;; dellog) dellog ;; *) echo "Usage: $0 {start|stop|status}"...原创 2019-08-14 16:14:27 · 379 阅读 · 0 评论 -
linux ps命令
[log@tcbj3-qqfpo01 qqrpt-consumer]$ ps aux | grep $WarNamelog 4706 0.4 2.4 16107488 807916 ? Sl Jul16 182:14 /usr/local/jdk/bin/java -jar /atmd/qqrpt-consumer/qqrpt-topic-consumer-0.0...原创 2019-08-14 16:07:31 · 214 阅读 · 0 评论 -
脚本登陆ftp
1 ftp登陆:方式一 注意设置passive关掉被动模式ftp -n -v << EOFopen $HOST:$PORTuser $USER $PASSbinary lpwdmkdir test2byeEOFecho "success"方式二:只能在浏览器或者windows的资源管理器中使用ftp://username:password@ip:...原创 2019-08-09 18:26:54 · 1837 阅读 · 0 评论 -
linux scp命令
如果需要上传或者下载目录,加上-r参数[lsx@tcbj3-mgm01 ~]$ history|grep sc 1735 2019-08-07 11:00:08 scp gmd@tcbj3-dmetl01:/atmd/etltasks/gmd/gmd.tar.gz . 1841 2019-08-16 16:26:46 scp upload.sh dcadmin@tcbj3-dmdis...原创 2019-08-22 19:14:13 · 107 阅读 · 0 评论 -
需求:我有2个json结构化文件,想要逐行对比,找出各个文件中的唯一行
方法一:使用java编程,读取文件 逐行对比,但每行都要和另一个文件的所有行做对比,复杂度 m*n方法二: linux命令是否有可以实现?grep就可以,缺点是完全匹配,没有因为结构化数据字段顺序的不同而去做匹配 grep的几个参数说明 -v反向查找,即获取没有匹配到的 模式选择regex pattern的不同,具体区别有机会可以多试试...原创 2019-09-22 18:42:11 · 506 阅读 · 0 评论 -
重装linux系统
1准备ISO镜像文件CentOS-7-x86_64-Minimal-1708.iso2利用UltralSO制作系统U盘https://blog.csdn.net/qq_43901693/article/details/955350513启动待重装电脑F2 boot setup F12 boot option...原创 2019-09-04 18:15:38 · 3290 阅读 · 0 评论 -
linux服务器利用conda独立安装python3
conda工具实现 conda为python而生1先安装condahttps://blog.csdn.net/tuzixini/article/details/81560980https://www.jianshu.com/p/edaa744ea47dwget https://repo.anaconda.com/miniconda/Miniconda2-latest-Linux...原创 2019-09-03 13:02:41 · 2443 阅读 · 0 评论 -
linux 循环-文件逐行处理
1 while方式 读入文件的方式 错误示例#!/bin/bashdownload_time=0zip_time=0cat module_names.txt |while read moduledo cat unzipfile_names.txt |while read f1 do t1=$(date "+%Y...原创 2019-08-30 11:40:09 · 1616 阅读 · 0 评论 -
linux mirror镜像下载ftp的内容
lftp -u $USER,$PASS sftp://$HOST:$PORT << EOFdu -sh ${RDIR}mirror -c --verbose=3 --parallel=3 --use-pget-n=5 ${RDIR}byeEOF原创 2019-08-28 15:11:55 · 1440 阅读 · 0 评论 -
linux date的使用2
1 linux date命令的使用1 命令参数 : -d 日期字符串 显示时间 -s 日期字符串 设置时间 --help 查看帮助说明2 格式化参数: %s 自1970年以来的秒数 %D %m/%d/%y示例1 命令行演示[tme@tcbj3-dmetl01 tme_upload]$ date +%Y%m%d20190828...原创 2019-08-28 14:56:29 · 107 阅读 · 0 评论 -
hadoop hdfs---zip md5---ftp
1 linux脚本从hdfs---》本地服务器--zip md5加密----》ftp服务器上传ftp速度20G用了9min,但是从hadoop将文件放到本地并加密1个多小时2考虑换种方式,直接hdfs--->ftp 用流的方式实现3 使用spark读取hdfs,然后指定写到ftp目前只有方式一实现了...原创 2019-08-27 14:28:06 · 527 阅读 · 0 评论 -
linux rsync使用
1 在本机同步复制2 远程数据同步,这个才是rsync的真正用武之处,上面的根本就是大材小用,copy就够用了 本地数据同步到远程rsync [OPTION...] SRC... [USER@]HOST::DESTrsync [OPTION...] SRC... rsync://[USER@]HOST[:PORT]/DEST$ rsync -rav dir1 rsync://10...原创 2019-08-14 13:56:38 · 112 阅读 · 0 评论 -
linux shell (())的使用
一下为测试脚本 t2.sh#!/bin/shnum=100;total=0;for((i=0;i<=num;i++));do ((total+=i));doneecho $total;total=0;i=0;if((i=5050));then echo "ok";fi转载 2019-06-13 13:41:19 · 150 阅读 · 0 评论 -
linux将一个大文件按行拆分成小文件
1split命令-l指定行数,每个文件多少行-b指定大小,每个文件100M.,这种担心会破坏一行的完整性-d指定用数字递增为生成的文件名编号 test111为前缀-a指定有几位数字 这里指定了4位,则从0000开始 split -l 700000 /atmd/data/i0610_2.csv -d -a 4 test111 split -b 100M /atmd/data...原创 2019-06-13 14:30:07 · 10785 阅读 · 1 评论 -
linux shell数值运算
1 bc命令1直接进入其命令行执行 bc -q 回车2写个文件一起执行 bc -q bc-test.bc(纯文本)3直接在shell中管道符交由bc执行数学运算 echo 2+3|bc4可处理进制转换,设置精度2 expr命令可以是数字或者字符串3let 命令4$((expr))5 ((a++))这种自加操作不用赋值,a从-变为了1,但是其他运算 $((b=b+...原创 2019-06-12 16:22:29 · 576 阅读 · 0 评论 -
crontab执行问题
crontab -e00 11 * * * /atmd/etltasks/gmd/gn-flow.sh 2>&1 > /atmd/etltasks/gmd/gn.log直接脚本执行时是ok的,但是通过crontab总觉得没有执行,log还是原来的log,原因在于只是把执行脚本的路径写成全路径了,而日志文件的路径却没写完整,而这里crontab并没有报错找不到文件!如...原创 2019-05-28 11:18:12 · 646 阅读 · 0 评论 -
linux从文件获取每一行中的指定内容
原文件中内容:2019-04-17 14:29:24,005 INFO (com.ul.api.ReportSEvent:45) - ReportSEvent checkParam(): bodyData={"sEvents":[{"userId":"444444444444444444","countryCode":"CN","subscriptionTier":"PREMIUM","e...原创 2019-04-17 16:32:34 · 9053 阅读 · 0 评论 -
linux crontab
30 00 * * * /xxx/xxx.sh &时间格式:分钟(0-59) 小时(0-23) 日期(1-31号) 月份 星期(0-7)crontab -e 编辑contab -l 查看内容原创 2019-04-12 11:43:23 · 95 阅读 · 0 评论 -
linux 日期格式转换
xxx.shdate1=`ls $path1|tail -n 1` #yyyyMMdddate2=`date -d $date +'%Y-%m-%d'`filename="io/aa/"date2".log" io/aa/2019-02-18.log #没有java类似的字符串拼接,也不需要使用+作连接符!! ...原创 2019-02-23 15:39:18 · 1995 阅读 · 0 评论 -
如何将mysql大数据量数据导出到多个文件
数据:mysql select 'xx1','xx2' union select xx1,xx2 from xx into outfile '/atmd/aa/bb.csv' fields terminated by '\t'总的数据量有2500w1在导出时,指定limit或者where条件,将数据在导出时就分别放在不同的文件里2直接导出一个大的文件里的情况:1使用spar...原创 2019-06-13 16:22:34 · 4045 阅读 · 0 评论 -
linux date函数的使用
-d 时间字符串[gmd@tcbj3-dmetl01 project-iot]$ echo $(date -d'1 day ago' '+%Y%m%d')20190612日期格式,都带有百分号[gmd@tcbj3-dmetl01 project-iot]$ date "+%Y-%m-%d %H:%M:%S"2019-06-13 18:18:20[gmd@tcbj3-dmetl01 pr...原创 2019-06-13 18:23:51 · 981 阅读 · 0 评论 -
在linux脚本里写zip命令时指定路径
在执行zip命令时,在命令行执行ok,在脚本里写文件名时报错原创 2019-08-09 15:21:59 · 2590 阅读 · 0 评论 -
在linux shell脚本的for循环里调用ftp命令
1关于ftp:它只是一个文件传输工具,看似和shell命令在执行中有相似,但其实有一些细节的地方是很不一样的习惯 1 区分ftp命令和shell命令在shell中可以创建touch ,vi文件,而进入ftp命令后就只能执行上传下载,lcd,cd,cd这类命令,如果要对文件进行修改,只能先下载到本地,执行后再上传,这样就直接覆盖掉了之前的ftp>lcd /home/l...原创 2019-08-09 15:14:26 · 3765 阅读 · 1 评论 -
linux shell tmux 命令记忆
几个对象;session 会话--- window 窗口 ---pannel 面板命令较全,参考:https://www.cnblogs.com/lizhang4/p/7325086.html会话session操作:session 列表:tmux lssession 创建: tmux new -s session_namesession进入: tmux attach -...原创 2019-08-13 18:39:55 · 470 阅读 · 0 评论 -
linux查看文件
//ls直接使用通配符[gmd@tcbj3-dmetl01 upload]$ls -al -h */*20190615* |more-rw-r--r-- 1 kugou sftp 3.1M Jun 15 00:59 10.1.212.172/bglog.2019061500.log-rw-r--r-- 1 kugou sftp 1.9M Jun 15 01:59 10.1.212.172/...原创 2019-06-27 14:19:04 · 245 阅读 · 0 评论 -
转linux从了解到入门
相关博客文章总结:1 硬件-内核--shell--用户应用程序(搞清楚位置在哪,才好有的放矢)2 shell分类 :Graphical user interface ,Command line interface GUI,CLI shell3 shell交互:直接终端输入输出(交互式),文件读入,执行(非交互式)4 shell分类:bash,csh,tcsh,ksh,可通过/e...翻译 2019-06-19 15:54:27 · 119 阅读 · 0 评论 -
linux 多session操作同一文件时,文件不可用
vi aaa.py文件,因某种原因文件卡住不可继续操作当另外一个用户尝试操作时,重新session进入,提示attention,不可操作ls查看列表文件, 只看到了原文件aaa.py此时有个隐藏的文件ls -al才可见 .aaa.py.swprm .aaa.py.swp此时可继续操作此文件...原创 2019-02-22 15:12:28 · 166 阅读 · 0 评论