將檔名中包含aa-aa-的字元去掉:
#!/bin/bash
catch_string='aa-aa-*'
for i in $(find ./* -name $catch_string)
do newname=$(echo $i | sed -e 's/aa-aa-//')
echo $newname
mv $i $newname
done
顯示乙個檔案中的include檔案和其存放路徑
#!/bin/bash
for i in $(find ./* -name '*.*')
doecho
echo
echo
echo '%%%%%%%%%%%%%%%%%file' $i 'included sercher%%%%%%%%%%%%%%%%%'
cat $i | grep -r '#include' >>file2
awk '' file2 >>file1
#cat file1
echo >file2
while read line
doecho $line | sed -e 's/>file2
donecat file2
echo >file1
while read line
doecho $line | sed -e 's/>//' >>file1
donecat file1
echo >file2
while read line
doecho $line | sed -e 's/"//' >>file2
donecat file2
echo >file1
sed -i '/^\+$/d' file2
sed -i '/^$/d' file2
#cat file2
while read line
dofile_name=$(basename $line)
#echo $file_name
file_path=$(dirname $line)
#echo $file_path
echo
echo '********************find' $line 'results*********************'
echo
find /usr/include/* -name $file_name
doneecho >file2
done
在乙個資料夾中使用aa-aa-標誌檔名篩選出與另乙個資料夾中相對應的檔案。
#!/bin/bash
for i in $(find ./* -name "aa-aa-*")
donew_file=$(echo $i | sed -e 's/_xiugai/_primery/')
pri_file=$(echo $new_file | sed -e 's/aa-aa-//')
echo $new_file
mv $pri_file $new_file
done
將檔案中include路徑的下劃線翻**
#!/bin/bash
input_arg1=$1
str="*"
ser_folder=$$
for i in $(find $ser_folder -name "*")
doecho "$i"
sed -i '/include/ ' $i
done
Linux中便捷的檔案批量處理
在linux的實際使用過程中,建立多個檔案 修改多個檔案 查詢檔案中的某個部分等需求都需要有一種能夠實現檔案批量處理的方法,這篇文章主要介紹了常用的一些檔案批量操作指令,大家一起學習一下吧。匹配0 任意字元 alpha 匹配單個字母 lower 匹配單個小寫字母 upper 匹配單個大寫字母 dig...
檔案批量重新命名
今天遇到乙個問題,有一批檔案,需要修改字尾名,還要將前面的部分字元刪除,首先想到重新命名命令 ren 試了幾次,無法實現需求,只能,批處理了。在網上查了一下,寫了個,將字尾為.doc.doc的該為只有乙個.doc echo off setlocal enabledelayedexpansion 開啟...
檔案批量操作之旅
檔案重新命名 os.rename a.txt b.txt 檔案批量操作 my code test 1.jpg 2.jpg import os file list os.listdir test 當前目錄下的檔案列表 相對路徑 以當當前目錄為起點的路徑 for f in file list print...