shell文本要求用户从命令行输入目录名和新文件前缀,并将指定目录下所有文件重名名为新文件前缀+原文件名
时间: 2024-01-19 15:03:16 浏览: 60
好的,这是一个比较简单的shell脚本,你可以将以下代码保存为rename.sh文件,然后在命令行执行:
```
#!/bin/bash
read -p "请输入目录名:" dir
read -p "请输入新文件前缀:" prefix
cd $dir
for file in *
do
mv $file $prefix$file
done
echo "重命名完成!"
```
注意,这个脚本会直接进入指定的目录,所以请确保输入的目录名是存在的。同时,为了安全起见,请确保没有重名的文件存在,否则可能会覆盖原有文件。
相关问题
shell脚本编写一个程序,在linux环境下实现文件复制功能。要求用户从命令行输入目录名和新文件前缀,并将指定目录下所有文件重名名为新文件前缀+原文件名
好的,这是一个比较简单的shell脚本,你可以将以下代码保存为mycp.sh文件,然后在命令行执行:
```
#!/bin/bash
read -p "请输入源文件目录名:" sourcedir
read -p "请输入目标文件目录名:" targetdir
read -p "请输入新文件前缀:" prefix
if [ ! -d $sourcedir ]; then
echo "源文件目录不存在!"
exit 1
fi
if [ ! -d $targetdir ]; then
echo "目标文件目录不存在!"
exit 1
fi
for file in $sourcedir/*
do
if [ -f $file ]; then
filename=$(basename $file)
cp $file $targetdir/$prefix$filename
fi
done
echo "复制完成!"
```
注意,这个脚本会将源目录下的所有文件复制到目标目录,并在复制时重命名文件为新文件前缀+原文件名。同时,为了安全起见,请确保目标目录存在且为空目录,否则可能会覆盖原有文件。
阅读全文