我在這個shell腳本中仍然是新的。我有一項給予我的任務,我很難執行它。 任務是我有很多基於ddmmyy的目錄。c shell腳本:找到目錄並重命名find的輸出
03Mar2014 08Aug2013 11Jan2015 16Jan2014 22Feb2014 26Mar2014
03Nov2013 08Jan2014 11Jul2013 16Jul2013 22Jul2013 26Oct2014
03Oct2013 08Jan2015 11Nov2014 16May2014 22Mar2014 26Sep2013
任務是使目錄變爲mmyy。
到目前爲止,我的代碼是
foreach file(`find . -type d | awk -F/ 'NF == 3'`)
echo $file
set newmove = `echo $file | cut -c 1-2,5-`
echo $newmove
mv $file $newmove
output:
for find . -type d | awk -F/ 'NF == 3':
./24Jan2015/W51A
`echo $file | cut -c 1-2,5-`
./Jan2015/W51A
mv $file $newmove
mv: cannot rename ./24Jan2015/W51A to ./Jan2015/W51A: No such file or directory
,但劇本沒有工作。 你們有什麼想法如何做到這一點?
*必須*你使用c-shell來做這件事,或者你可以交替使用POSIX shell或Bash?另外,當你想製作目錄「mmyy」時,你真的是指「mmmYYYY」,就像你顯示的輸入列表一樣嗎? [CSH編程有時被認爲是有害的。](http://www.bmsc.washington.edu/people/merritt/text/cshbad.txt) – ghoti