为文件名添加前缀/后缀而无需重新输入?

rya*_*lon 3 bash environment-variables rename

我想做以下事情

$ tmp=name*
$ mv $tmp new_$tmp
$ ls new_*
$ new_name-with-stuff-i-dont-want-to-type name-with-stuff-i-dont-want-to-type
Run Code Online (Sandbox Code Playgroud)

设置环境变量似乎有效

$ $tmp
$ name-with-stuff-i-dont-want-to-type
Run Code Online (Sandbox Code Playgroud)

但不是当我做 mv

$ mv $tmp new_$tmp
$ ls new_*
$ new_name*
Run Code Online (Sandbox Code Playgroud)

问题:是否有一种巧妙而简单的方法可以节省一些打字的时间?

Bri*_*Guy 5

我总是喜欢 bash 扩展:

ls
name-with-stuff-i-dont-want-to-type

mv name-with-stuff-i-dont-want-to-type{,_old}

ls
name-with-stuff-i-dont-want-to-type_old
Run Code Online (Sandbox Code Playgroud)

这相当于:

mv name-with-stuff-i-dont-want-to-type name-with-stuff-i-dont-want-to-type_old
Run Code Online (Sandbox Code Playgroud)

对于前缀:

ls
name-with-stuff-i-dont-want-to-type

mv {,new_}name-with-stuff-i-dont-want-to-type

ls
new_name-with-stuff-i-dont-want-to-type
Run Code Online (Sandbox Code Playgroud)

为了方便文件重命名:

ls
fileFOOname

mv file{FOO,BAR}name

ls
fileBARname
Run Code Online (Sandbox Code Playgroud)