shell 指令碼實現檔案打包

2021-08-03 16:32:36 字數 793 閱讀 9014

將sent資料夾中的txt檔案壓縮到successful中對應資料夾中,若是沒有資料夾建立乙個

test3.sh

#!/bin/bash

date=`date +%y%m`

for dir in `ls $file_path --file-type -1`;

do#子目錄為資料夾

if [ `echo

$dir | grep "/$"` ]; then

#去除dir後的『/』

dir=$;

#資料夾下txt文字個數大於0

total=$(ls $file_path/$ -1 | grep -e "txt$" | wc -w)

if [ $total

-gt0 ]; then

for file in `ls $file_path/$ -1 | grep -e "txt$" | sort -u`

doif [ ! -d

"$/$" ]; then

mkdir $/$

fi#拷貝檔案

cp $/$/$file

$/$done

#壓縮打包

cd$/$

tar czvf `date +"%y_%m%d_%h%m%s"`.tar *.txt

#清除拷貝檔案

rm $/$/*.txt

fifidone

指令碼執行

$ chmod 777 ./test3.sh

$ ./test3.sh

shell指令碼 打包檔案亂碼 解決方法

昨天在一台freebsd的環境下寫shell指令碼打包檔案的時候出現亂碼 一般這種情況下更改環境變數就可以,但是那台機器上還有其他的系統 定時器 shell指令碼等等,他們可能用到當前的環境變數,所以更改環境變數不是最好的選擇。由於我的檔案需要utf 8的編碼格式,而且檔案生成後檔案的名字也是utf...

Shell指令碼實現對檔案編輯

常見linux檔案的編輯命令 vi vim,有時候我們想寫乙個指令碼實現對檔案編輯,這個時候,可能就不夠用了,下面介紹一些辦法 1 echo命令 shell的echo命令常用於字串的輸出 例如 root mdw zxy echo hello world file1 root mdw zxy cat ...

Shell指令碼實現對檔案編輯

常見linux檔案的編輯命令 vi vim,有時候我們想寫乙個指令碼實現對檔案編輯,這個時候,可能就不夠用了,下面介紹一些辦法 1 echo命令 shell的echo命令常用於字串的輸出 例如 root mdw zxy echo hello world file1 root mdw zxy cat ...