是否可以在特定命令之后触发命令?
Is it possible to trigger a command after a specific one?
每当我运行systemctl start <something>
或systemctl restart <something>
,我也想运行systemctl status <something>
有没有办法在发出特定命令后触发命令?
我正在考虑编写一个 alis 的可能性,它会 运行 两个命令在一行中,但我不明白如何保持第一个命令的自动完成。今天当我输入
systemctl start apa<tab>
我自动完成
systemctl start apache2.service
通过使用 function
,我失去了(或没有?)自动完成的能力并将此自动完成结果保存到 运行 一个新命令,并将其作为参数
如 Fish documentation for function
中所述,--wraps
/ -w
标志可用于指示指定命令的完成应由新函数继承。例如:
function sstart --wraps systemctl -d "Start service and show its status"
systemctl start $argv
systemctl status $argv
end
每当我运行systemctl start <something>
或systemctl restart <something>
,我也想运行systemctl status <something>
有没有办法在发出特定命令后触发命令?
我正在考虑编写一个 alis 的可能性,它会 运行 两个命令在一行中,但我不明白如何保持第一个命令的自动完成。今天当我输入
systemctl start apa<tab>
我自动完成
systemctl start apache2.service
通过使用 function
,我失去了(或没有?)自动完成的能力并将此自动完成结果保存到 运行 一个新命令,并将其作为参数
如 Fish documentation for function
中所述,--wraps
/ -w
标志可用于指示指定命令的完成应由新函数继承。例如:
function sstart --wraps systemctl -d "Start service and show its status"
systemctl start $argv
systemctl status $argv
end