① 如何用EXCEL里的數據對其它文件進行文件名批量的替換修改
假設舊文件名在A列,新文件名在B列。
使用VBA宏即可。
具體步驟:
打開Excel
按下快捷鍵Alt+F11,打開宏編輯器
輸入代碼
SubrenameGo_by_zzllrr()
Application.ScreenUpdating=False
IfRange("A1")=""ThenEnd
Setfs=CreateObject("Scripting.FileSystemObject")
cnt=0
Fori=1ToColumns(1).Find("*",,,,1,2).row
file="D:zzllrr"&Range("A"&i)
n=Range("B"&i)
IfDir(file,16)=""Then
Range("A"&i).Interior.Color=RGB(255,0,0)
Else
Ifn<>""Then
Setf=fs.GetFile(file)
IfDir("D:zzllrr"&n)<>""Then
WithRange("A"&i&":B"&i).Interior
.Pattern=xlSolid
.PatternColorIndex=xlAutomatic
.Color=255
EndWith
Else
f.Name=n
cnt=cnt+1
EndIf
EndIf
EndIf
Nexti
Setf=Nothing
Setfs=Nothing
Ifcnt>0ThenMsgBox"RenameOK!WellDone!",vbOKOnly,Sheets(1).Name
EndSub
按下F5執行即可。
② 錄像機(DV)里的卡(儲存卡)里的文件夾能否重命名
某些固定文件不可以,其他不是DV需要的程序都可以自己隨便命名
③ 如何給一個文件夾內所有的子文件夾下的文件添加前綴,前綴是子文件夾名
批量在文件名前面加相同的前綴:
步驟1,下載軟體後安裝打開,然後將需要添加前綴的文件導入到軟體中,也可以通過拖動文件到軟體進行導入。
④ 怎麼用shell腳本將文件名改名
修改文件名可以有不同的命令方式,比如rename, mv都可以實現
對於單個的文件,可以直接使用以上的命令,那如果有大量的類似格式的文件名需要修改成其他格式的,該如何呢?
比如某次測試後,保存的文件為 Lan1.txt, Lan2.txt,....Lan100.txt
這一百個文件需要在前面添加前綴變成類似 ch7_Lan1.txt,如果你還想使用mv來一個一個...多痛苦啊
當前文件夾下,文件修改有4種方式
1. 使用while Loop加 ${//}來實現Lan到 ch7_Lan的替換
點擊(此處)折疊或打開
find . -name "Lan*txt" -type f | read files
do
new=${files/Lan/ch7_Lan}
mv $files $new
done
2. 充分利用 awk的分隔符功能來實現
點擊(此處)折疊或打開
ls *Lan* | awk 'BEGIN{FS="Lan";OFS="ch7_Lan"}{printf "mv "$0" ";$1=$1;print $0}' | sh
首先,修改 FS和 OFS,輸入和輸出的分隔符
其次,使用 awk中的命令,拼接 「mv Lan1.txt ch7_Lan1.txt」這條命令
最後,使用|sh來執行一個 shell命令來完成 mv動作
其中,$1=$1是必須的,這個是完成 Lan===> ch7_Lan的關鍵(其實是可以使用 $2=$2等來替換,只要一個賦值動作而已)
奇怪的是,難道沒有賦值動作,分隔符的改變就不能檢測出來么??
3. 使用 awk的內置命令,gsub和 system來實現替換和命令執行
點擊(此處)折疊或打開
ls "*Lan*" | awk '{org=$0;gsub("Lan", "ch7_Lan");system("mv "org" "$1)}'
首先保存原始的數據
其次修改 Lan為 ch_Lan
最後執行mv動作
⑤ 怎麼修改電腦磁碟里的名稱名
電腦磁碟文件夾名稱需要文件屬性選項卡里更改。
電腦文件屬性選項卡更改磁碟文件夾名稱步驟如下所示:
1、在桌面點擊打開我的電腦。
⑥ java程序復制文件的代碼里如何實現更改文件後綴名的
通過獲取文件的名字來得到這個名字的字元串,然後就可以處理了啊!
不需要啊,要使用到文件流的話,那你就是讀取的文件的內容了,與文件名的獲取更改無關的啊!
你的這個代碼有什麼疑問嗎?
你這個代碼就是獲取指定文件夾下的所有文件,列印文件的擴展名,然後寶貝文件嘛
⑦ 求一個批處理問題 批處理更改文件名
@echo off
setlocal enabledelayedexpansion
rem 非通用版本,以下命名只按提供的模式截取前7為字元進行
for /f "delims=" %%a in ('dir /b /a-d') do (
set "str=%%a"
set fs=y
set /a id=sid=0
for /l %%i in (6,-1,0) do (
if defined fs (
set "str_tmp=!str:~%%i,1!"
echo !str_tmp!|findstr "[0-9]">nul 2>nul&&(set /a id=%%i+1&set fs=)
)
)
set /a sid=!id!-3
if !sid! gtr 0 (
call :rename !id! !sid!
) else (
echo !str!不符合位文件名長度大於3位字元的的修改要求
)
)
pause
exit /b
:rename
set "str_ago_n=!str:~%2,3!"
echo !str_ago_n!|findstr "^[0-9][0-9][0-9]$">nul 2>nul&&(
set "str_af=!str:~%1!"
set "str_ago_s=!str:~0,%2!"
set "fname=!str_ago_s!-!str_ago_n! !str_af!"
echo ren "!str!" "!fname!"
rem 自己測試一遍,如果顯示正確,刪除上面一行開頭的echo
)||echo !str!不符合文件名前7位中末尾為連續3位數字的修改要求
goto :eof