程序猿的日常——工作中常用的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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM