我需要從文件名中提取2個東西 - 擴展名和數字。shell腳本迭代拋出目錄和分割文件名
我有一個文件夾「/ var/www/html/MyFolder /」,這個文件夾包含更多的文件夾,並在每個文件夾中存儲一些文件。 該文件具有以下結構:「a_X_mytest.jpg」或「a_X_mytest.png」。 「a_」已修復,並且在每個文件夾中都是相同的,我需要「X」和文件擴展名。
我的劇本是這樣的:
#!/bin/bash
for dir in /var/www/html/MyFolder/*/
do
dir=${dir%*/}
find "/var/www/html/MyFolder/${dir##*/}/a_*.*" -maxdepth 1 -mindepth 1 -type f
done
這只是從我的腳本開始。
有一個在我的腳本錯誤:
find: `/var/www/html/MyFolder/first/a_*.*': No such file or directory
find: `/var/www/html/MyFolder/sec/a_*.*': No such file or directory
find: `/var/www/html/MyFolder/test/a_*.*': No such file or directory
有誰知道哪裏的錯誤是什麼? 下一步,當上面的行正在工作時,將拆分找到的文件並獲取這兩個部分。
要拆分,我會用這個:
arrFIRST=(${IN//_/ })
echo ${arrFIRST[1]}
arrEXT=(${IN//./ })
echo ${arrEXT[1]}
任何人可以幫助我與我的問題嗎?
爲什麼你在找到之前有for循環? – Sobrique