我对它很陌生bash
,我什至不知道我想要的是否可能。如果我不知不觉地要求太多并且这是不可能的,请提前抱歉。
bash
在进行小编辑后,我过于频繁地执行许多不同的脚本来进行测试和学习过程。
每分钟一遍又一遍地输入整个命令真的很烦人,浪费了我很多时间。
例如,当前执行脚本时我总是输入
su -c sh /sdcard/downloads/script1.sh
无论如何,我可以通过输入一个命令来分配整个命令来启动吗?一个字?我只想输入例如
script1
这实际上应该执行
su -c sh /sdcard/downloads/script1.sh
(或该实例的任何定义的命令)。
简而言之,一个单词和它对应的命令会有很多对,这样可以节省我的时间。
而且这个东西应该是永久的。
即使我关闭终端并重新打开它并输入指定的单词,它也应该运行相应的定义命令。
我希望有办法做到这一点。
答案1
~/.bashrc
在您的文件中创建别名:
alias script1='su -c sh /sdcard/downloads/script1.sh'
该别名将在您启动的下一个 shell 会话中可用。
答案2
alias script1="su -c /sdcard/downloads/script1.sh && su -c /sdcard/downloads/script2.sh'。这看起来正确吗?
并不真地。这可能不是该走的路。这是不切实际的。它适用于该别名以及当前位置的这两个脚本,但您不想为您调用的每个脚本创建别名。您提到“许多不同的学习脚本”。
您必须组织制表符补全、命令历史记录、路径、别名、函数、脚本、bash 登录 ( .bashrc
)。不需要太多,但必须协调。
注意:别名命令本身是制表符可补全的。 readline 函数shell-expand-line
可以在执行之前扩展别名。这意味着您可以获得scri<tab><M-C-e>
整行内容,因此您可以在按 Enter 之前进行编辑。只是为了展示什么是可能的。
要重复特殊命令,您宁愿使用命令历史记录。要执行普通脚本,您可以使用 shell 功能,例如别名、路径、函数和其他脚本。