linux中提示“拷贝或重命名该输入文件[Y/N]?”Y则拷贝输入文件名的文件,N则重命名输入文件名的文件代码
时间: 2023-12-06 21:44:40 浏览: 143
可以使用以下代码来实现:
```bash
#!/bin/bash
echo "请输入文件名:"
read filename
if [ -f $filename ]; then
echo "拷贝或重命名该输入文件[Y/N]?"
read choice
if [ $choice == "Y" ]; then
cp $filename $filename"_copy"
echo "文件已拷贝为"$filename"_copy"
elif [ $choice == "N" ]; then
echo "请输入新的文件名:"
read newfilename
mv $filename $newfilename
echo "文件已重命名为"$newfilename
else
echo "无效的选择"
fi
else
echo "文件不存在"
fi
```
该脚本会先让用户输入文件名,然后判断该文件是否存在。如果存在,就会提示用户选择是拷贝文件还是重命名文件。如果选择拷贝文件,就会将该文件复制一份并命名为原文件名+"_copy"。如果选择重命名文件,就会让用户输入新的文件名并将原文件重命名为新的文件名。如果文件不存在,就会提示用户文件不存在。
相关问题
shell拷贝文件重命名
你可以使用`cp`命令来拷贝文件,并使用`mv`命令来重命名文件。下面是一个示例命令:
```
cp /path/to/source/file /path/to/destination/newfilename
```
这将拷贝源文件到目标目录并将其重命名为新的文件名。如果你只想重命名文件而不是移动它,可以使用以下命令:
```
mv /path/to/current/file /path/to/new/filename
```
这将在同一目录中将文件重命名为新的文件名。
cp命令拷贝文件重命名
`cp` 命令在 Linux 和 macOS 系统中是一个基本的复制文件或目录工具,它可以同时用于拷贝文件并进行重命名操作。如果你想要通过 `cp` 命令复制文件并在目标位置给它新的名字,你可以使用这样的语法:
```bash
cp source_file target_directory/destination_new_name
```
这里,`source_file` 是你要复制的原始文件名,`target_directory` 是目标目录的路径,`destination_new_name` 就是你想给新文件设置的新名称。
例如,如果你想将名为 `old.txt` 的文件复制到当前目录下,并命名为 `new_version.txt`,你可以这样操作:
```bash
cp old.txt . /new_version.txt
```
这个命令会把 `old.txt` 文件复制一份,然后自动改名为 `new_version.txt`。
阅读全文