程序猿的日常——工作中常用的Shell脚本

工作当中总是会有很多常用的linux或者命令,这里就做一个总结

文件远程拷贝

如果想把文件从本机拷贝到远程,或者从远程下载文件到本地。

# 把本地的jar拷贝到远程机器xxxip的/home/source目录下
scp a.jar root@xxxip:/home/source
# 拷贝远程的文件到本地
scp root@xxxip:/home/source/b.jar b.jar

目录下文件太多无法删除

如果目录下的文件很多,无法直接rm -rf,那么可以寻找一些匹配模型,分批删除。比如文件下面有很多的文件:

001.jpg
002.jpg
003.jpg
...

那么可以按照下面的命令删除:

rm -rf *1.png

文件的解压缩

xxx目录为待压缩的目录:

tar -cvf xxx.tar xxx 压缩

解压缩:

tar -xvf xxx.tar 默认解压缩到当前目录

Linux统计

如果想要统计一个文件的行数,可以直接用wc:

wc -l xxx.txt

如果想要统计目录下文件的数量,可以这样:

ls -l | grep "^-" | wc -l

网络端口是否可用

telnet ip port

查看磁盘的空间

df -hl

spark脚本刷历史

#!/bin/sh

URL="jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=utf8"
USER="test"
PASSWORD="123456"

for i in {10..1}
do
let "sqoop_day=i+1"
day=`date --date="${sqoop_day} days ago" +%Y-%m-%d`
spark_day=-${i}

spark2-submit --master yarn --deploy-mode cluster --executor-memory 5G --num-executors 3 --executor-cores 3 --driver-memory 5G --class com.a.b.c.App spark.jar spark_name ${spark_day}

sqoop export --connect ${URL} --username ${USER} --password ${PASSWORD}  --table table_name --update-mode allowinsert --update-key b_id --fields-terminated-by  ^ --export-dir hdfs://nameservice1/data/csv/${day} --mapreduce-job-name test_sqoop -m 1

done
posted @   xingoo  阅读(1530)  评论(3编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
历史上的今天:
2017-10-11 《湖畔》—— 读后总结
2017-10-11 程序猿的日常——SpringMVC系统架构与流程回顾
2016-10-11 sql基础知识:日期的常用用法
2013-10-11 [翻译]CURAND Libaray--Host API--(1)
2012-10-11 WSAAsyncSelect模型
2012-10-11 HDOJ 1014
2012-10-11 第四章 数据抽象 ----《C++编程思想》
点击右上角即可分享
微信分享提示