在linux中自定义命令来移动文件

时间:2015-11-22 04:12:26

标签: linux bash shell unix

我正在尝试创建一个允许我将文件移动到另一个目录的命令。例如,当我在命令行中输入“move file1”时,它应该将文件“file1”移动到另一个目录。我知道它可以简单地作为mv file1 / path / to / destination完成,但我想创建一个新命令。我是新Linux用户,请帮助我。

这是我试过的: 为move ='/ home / bin / move.sh'创建了一个别名 所以,现在当我在命令行中键入move时,它会执行move.sh脚本

开始将shell脚本move.sh编写为:

#!/bin/bash

mv "$2" "/path/to/destination"

我不知道该怎么办。整个过程也可能是错误的。请帮我解决这个问题。

提前致谢

2 个答案:

答案 0 :(得分:2)

创建一个函数:

move () { mv -t /path/to/destination "$@" ;}

将其放入~/.bashrc以使其永久化。

现在将其运行为:

move /source /files 

答案 1 :(得分:2)

here您可以阅读如何选择参数。

here开始,您可以阅读有关如何检查参数数量的更多信息。

move.sh

#!/bin/bash
if (( $# < 2 )); then
    # TODO: print usage
    exit 1
fi
mv "$1" "$2"

然后你需要让它可执行。

chmod u+x move.sh

您可以删除.sh部分。它不会改变任何东西。

mv move.sh move

然后你应该可以调用文件

move asd /home/

确保别名调用正确的文件。

如果您想让生活更轻松,请删除别名并将文件放在/ bin /目录

cp move /bin/
祝你好运。