gpt4 book ai didi

linux - Bash History Expansion 可以用于引用同一命令中的某些内容吗?

转载 作者:太空宇宙 更新时间:2023-11-04 09:02:01 25 4
gpt4 key购买 nike

Bash 具有称为历史扩展的功能,您可以使用快捷方式扩展到您之前在 bash 中键入的内容。

示例:!! - 扩展为之前的命令

$> rm -f /var/log/access.log
rm: /var/log/access.log: Permission Denied
$> sudo !!
sudo rm -f /var/log/access.log
$> echo "i am teh hax"

另一个:!$ - 扩展到上一个命令的最后一个参数

$> echo "no one was here" > access.log
$> cp !$ /var/log/
cp access.log /var/log/

bash 或其他一些 shell 是否能够在命令本身内使用替换快捷方式?

有点像

$> cp httpd.conf !$.bak
cp httpd.conf httpd.conf.bak
$> echo "SABOTEUR!!!" > httpd.conf

我需要提升 1980 年代的赛博朋克技能。请帮忙。

最佳答案

在命令本身中,您的意思是要引用 httpd.conf 吗?

那么这就是您在 superuser 中的解决方案

使用 bash history expansion :

mv path/to/oldfile !#:1:h/newfile

!#:1:h 表示:从您当前输入的行 (!#) 开始,取第一个单词 (:1),然后只从中获取路径组件(:h -- head)。

关于linux - Bash History Expansion 可以用于引用同一命令中的某些内容吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19442272/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com