我想在目錄中的每個文件的開頭添加一個文本字符串。字符串是uniwisc
。將文本添加到文件名的起始位置
當我運行該腳本:
#!/bin/sh
url="ftp://rammftp.cira.colostate.edu/Lindsey/spc/ir/"
wget -r -nd --no-parent -nc -P /awips2/edex/data/goes14/ $url
find /awips2/edex/data/goes14/ -type f -exec cp {} /awips2/edex/data/uniwisc/ \;
for f in /awips2/edex/data/uniwisc/*;
do
f="$(basename $f)"
mv "$f" "uniwisc.$f"
done;
find /awips2/edex/data/uniwisc/ -type f -mmin -6 -exec mv {} /awips2/edex/data/manual/ \;
exit 0
我得到的錯誤mv: cannot stat '<filenames>' "No such file or directory.
使用'basename'。 –
訪問變量時,除非您肯定沒有空格字符或者您想要這種行爲,否則通常會將它們用引號引起來。在這種情況下,你應該有''$ f''而不是'$ f'。如果您試圖將文件移動到「讓我開心」,那麼代碼類似於您所寫的代碼將會失敗的一個例子。您將收到一條錯誤消息,指出文件'happy'不存在,然後顯示錯誤消息,指出文件'me'不存在(假設單個文件'happy'和'me'不存在) , –
謝謝@ mklement0。 –