是否有任何bash符号表示';那';目录

是否有任何bash符号表示';那';目录,bash,ubuntu,directory,Bash,Ubuntu,Directory,例如,当我在目录A中时,我想对目录B中的A文件进行更改,并将更改保存在B中,我现在知道的唯一方法是 A$ cat B/file |some_changes > B/file2 “B/file2”中是否有任何符号可替换B, 像是指这个目录,有没有“那个”目录? 当我得到一个很长的目录B时,我想到了这一点。Tks你可以使用历史扩展来实现这一点,但是要正确地实现它是很困难的,几乎肯定不值得付出努力 $ cat B/file | some_change > !#:1:h/file2 其中

例如,当我在目录A中时,我想对目录B中的A文件进行更改,并将更改保存在B中,我现在知道的唯一方法是

A$ cat B/file |some_changes > B/file2
“B/file2”中是否有任何符号可替换B, 像
是指这个目录,有没有“那个”目录? 当我得到一个很长的目录B时,我想到了这一点。Tks

你可以使用历史扩展来实现这一点,但是要正确地实现它是很困难的,几乎肯定不值得付出努力

$ cat B/file | some_change > !#:1:h/file2
其中
#
是当前行的历史扩展
:1
是扩展的word之一,
:h
是文件路径的“头”

或者,评论中的两个建议都是好的

最后,您可以使用readline/etc.命令剪切路径,然后再次粘贴

使用
meta-b
/
alt-b
跳回长路径,然后
ctrl-w
杀死(剪切)单词/路径,然后
ctrl-y
将其拉回来,然后
ctrl-e
跳到行的末尾,然后
ctrl-y
再次粘贴长路径。

您可以使用历史扩展来实现这一点,但要正确完成这一点非常困难,几乎肯定不值得付出努力

$ cat B/file | some_change > !#:1:h/file2
其中
#
是当前行的历史扩展
:1
是扩展的word之一,
:h
是文件路径的“头”

或者,评论中的两个建议都是好的

最后,您可以使用readline/etc.命令剪切路径,然后再次粘贴


使用
meta-b
/
alt-b
跳回长路径,然后
ctrl-w
杀死(剪切)单词/路径,然后
ctrl-y
将其拉回来,然后
ctrl-e
跳到行尾,然后
ctrl-y
再次粘贴长路径。

否。如果需要重复使用某个变量,只需使用该变量。或者您可能希望
pushd B
&然后
popd
…否。如果您需要重复使用某个变量,只需使用它。或者您可能希望
pushd B
&然后
popd
。。。