谁能注释这段linux代码?要求每行都注释
发布网友
发布时间:2022-05-10 00:50
我来回答
共2个回答
热心网友
时间:2023-10-15 16:16
function changename(){-- 俺是淫荡的函数changename(改名字)
if [ -z $2 ];then-- 如果第二个参数为空
echo "lack function parameter "-- 告诉您了:参数不够
return -1-- 返回个-1给您
fi-- *的判断结束了
mv -f $1 $2-- 别说啥了,把文件1改名成文件2吧
return 0 -- 返回个0给您
}-- 淫荡的函数changename结束了
function change()-- 俺是第二淫荡的函数change(改变)
{-- 函数开始咯
ofileName= # old file name-- 有个变量ofileName
nfileName= #new file name -- 有个变量nfileName
ls -l > a.txt-- 把当前目录下的文件列出来写到文件a.txt
index=0-- 俺是变量index,初始值是0
while read line-- 结合done<a.txt,俺是说俺要开始从a.txt一行一行读到变量line里了
do-- 开始吧!
index=`expr ${index} + 1`-- 开始计数吧,完事得靠这个考勤挣工资呢
if [ ${index} -eq 1 ] ; then-- 如果是第一个文件的话
continue; # ignore the first line of 'ls -l'-- 继续,啥也不干
fi-- *的判断又结束了
a=($line)-- 把line这个变量里边的东西拆了,放到数组a里边
ofileName=${a[8]}-- 把a的第8个元素给ofileName
pos=`expr index ${ofileName} "."`-- ofileName里有木有.啊?在啥位置?请告诉pos
if [ ${pos} -eq 0 ] ; then-- 如果pos是0,也就是说木点.!!!
nfileName="${ofileName}[${a[3]}]" -- 把ofileName和a的第三个元素拼吧拼吧给nfileName(原文件名加上[文件拥有者的名字])
else-- 或者
owner="[${a[3]}]."-- owner是a的第三个元素加个.
nfileName="${a[8]/./${owner}} "-- 把a的第8个元素里边的点.换成owner这个变量值
fi-- *的判断再次结束了
echo "nfilename=${nfileName}" -- 告诉你nfilename=变量nfileName的值
changename ${ofileName} ${nfileName}-- 叫changename函数起床干活,参数一时ofileName,参数二十nfileName
done<a.txt-- 参见N行前的解释
}-- 淫荡的函数change结束了
热心网友
时间:2023-10-15 16:16
shell脚本高手快出现吧。
大致意思,是在change 里面,ls -l 显示当前目录的所有文件,保存到a.txt,然后读取a.txt内容,根据需求,,判断,,调用changename,,改文件名字(mv -f $1 $2,把参数1名字,改为参数2)。
水平有限,仅供参考。。。
如果LZ在学习shell的话,可以看看shell语法,这段不是很难。