常用快捷键
- Ctrl + L:清除屏幕并将当前行移到页面顶部。
- Ctrl + U:从光标位置删除到行首。
- Ctrl + K:从光标位置删除到行尾。
- Ctrl + a:移到行首。
- Ctrl + b:向行首移动一个字符,与左箭头作用相同。
- Ctrl + e:移到行尾。
- Ctrl + f:向行尾移动一个字符,与右箭头作用相同。
- Alt + f:移动到当前单词的词尾。
- Alt + b:移动到当前单词的词首。
- Ctrl + d:删除光标位置的字符(delete)。
- Ctrl + w:删除光标前面的单词。
- Ctrl + t:光标位置的字符与它前面一位的字符交换位置(transpose)。
- Alt + t:光标位置的词与它前面一位的词交换位置(transpose)。
- Alt + l:将光标位置至词尾转为小写(lowercase)。
- Alt + u:将光标位置至词尾转为大写(uppercase)。
- 使用Ctrl + d的时候,如果当前行没有任何字符,会导致退出当前 Shell,所以要小心。
剪切和粘贴快捷键如下。
- Ctrl + k:剪切光标位置到行尾的文本。
- Ctrl + u:剪切光标位置到行首的文本。
- Alt + d:剪切光标位置到词尾的文本。
- Alt + Backspace:剪切光标位置到词首的文本。
Ctrl + y:在光标位置粘贴文本。
Ctrl + p:显示上一个命令,与向上箭头效果相同(previous)。
Ctrl + n:显示下一个命令,与向下箭头效果相同(next)。
Alt + <:显示第一个命令。
Alt + >:显示最后一个命令,即当前的命令。
Ctrl + o:执行历史文件里面的当前条目,并自动显示下一条命令。这对重复执行某个序列的命令很有帮助。
感叹号!的快捷键如下。
- !!:执行上一个命令。
- !n:执行历史文件里面行号为n的命令。
- !-n:执行当前命令之前n条的命令。
- !string:执行最近一个以指定字符串string开头的命令。
- !?string:执行最近一条包含字符串string的命令。
- string1string2:执行最近一条包含string1的命令,将其替换成string2。
()号
\((...)可以扩展成另一个命令的运行结果,该命令的所有输出都会作为返回值。
\)((...))可以扩展成整数运算的结果,详见《Bash 的算术运算》一章。
\( myvar=USER
\) echo ${!myvar}
ruanyf
$?为上一个命令的退出码,用来判断上一个命令是否执行成功。返回值是0,表示上一个命令执行成功;如果是非零,上一个命令执行失败。
字符串截数
1.最近 2.最贪婪
从前往后
#
##
从后往前
%
%%
for与while
for
类型js里面的for in
for i in "\(@"; do
echo \)i
done
while
while getopts 'lha:' OPTION; do
case "$OPTION" in
l)
echo "linuxconfig"
;;
h)
echo "h stands for h"
;;
a)
avalue="$OPTARG"
echo "The value provided is $OPTARG"
;;
?)
echo "script usage: $(basename $0) [-l] [-h] [-a somevalue]" >&2
exit 1
;;
esac
done
shift "\(((\)OPTIND - 1))"
命令的参数
bash的-x参数可以在执行每一行命令之前,打印该命令。这样就不用自己输出执行的命令,一旦出错,比较容易追查。
-n:不运行脚本,只检查是否有语法错误。
-v:输出每一行语句运行结果前,会先输出该行语句。
-x:每一个命令处理完以后,先输出该命令,再进行下一个命令的处理。