8.1 shell介绍 8.2 命令历史 8.3 命令补全和别名 8.4 通配符 8.5 输入输出重

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了8.1 shell介绍 8.2 命令历史 8.3 命令补全和别名 8.4 通配符 8.5 输入输出重相关的知识,希望对你有一定的参考价值。

8.1 shell介绍

shell是系统跟计算机硬件交互时使用的中间介质,它只是系统的一个工具。
用户直接面对的不是计算机硬件而是shell,用户把指令告诉shell,然后shell再传输给系统内核,接着内核再去支配计算机硬件去执行各种操作。

8.2 命令历史

linux是会有记录的,预设可以记录1000条历史命令。这些命令保存在用户的家目录中的.bash_history文件中。有一点需要你知道的是,只有当用户正常退出当前shell时,在当前shell中运行的命令才会保存至.bash_history文件中。

1) !! 连续两个 ‘!’, 表示执行上一条指令;

[[email protected] ~]# pwd
/root
[[email protected] ~]# !!
pwd
/root
2) !n 这里的n是数字,表示执行命令历史中第n条指令,例如 !1002 表示执行命令历史中第1002个命令;

[[email protected] ~]# history |grep 1002
1002 pwd
1015 history |grep 1002
[[email protected] ~]# !1002
pwd
/root

history 命令如果未改动过环境变量,默认可以把最近1000条命令历史打印出来。

3) !字符串 (字符串大于等于1),例如 !pw 表示执行命令历史中最近一次以 ‘pw’ 为开头的指令。

[[email protected] ~]# !pw
pwd
/root

8.3 命令补全和别名

命令补全就是按tab键,它可以帮你补全一个指令,也可以帮你补全一个路径或者一个文件名。连续按两次tab键,系统则会把所有的指令或者文件名都列出来。

别名

前面也出现过alias的介绍,这个就是bash所特有的功能之一了。我们可以通过alias把一个常用的并且很长的指令别名一个简洁易记的指令。如果不想用了,还可以用unalias解除别名功能。直接敲alias会看到目前系统预设的alias.

alias语法很简单, alias [命令别名]=[‘具体的命令‘]
alias lgx=‘pwd‘
lgx
/root
unalias lgx
lgx
bash: lgx: command not found

8.4 通配符

在bash下,可以使用 * 来匹配零个或多个字符,而用 ? 匹配一个字符。

[[email protected] ~]# ls -d test*
test1.txt test2 test3 test.pl test.txt
[[email protected] ~]# ls -d test?
test2 test3

8.5 输入输出重定向

输入重定向用于改变命令的输入,输出重定向用于改变命令的输出。输出重定向更为常用,它经常用于将命令的结果输入到文件中,而不是屏幕上。输入重定向的命令是<,输出重定向的命令是>,另外还有错误重定向2>,以及追加重定向>>.
mkdir /tmp/10
cd /tmp/10
head /etc/passwd > 1.txt
echo "123" >> 1.txt
cat 1.txt

以上是关于8.1 shell介绍 8.2 命令历史 8.3 命令补全和别名 8.4 通配符 8.5 输入输出重的主要内容,如果未能解决你的问题,请参考以下文章

五周第三次课 8.1 shell介绍 8.2 命令历史 8.3 命令补全和别名 8.4 通配符 8.

8.1 shell介绍 8.2 命令历史 8.3 命令补全和别名 8.4 通配符 8.5 输入输出重

8.1 shell介绍 8.2 命令历史 8.3 命令补全和别名 8.4 通配符 8.5 输入输出重

8.1 shell 介绍8.2 命令历史8.3 命令补全与别名8.4 通配符8.5 输入输出重定向

8.1 shell介绍 8.2 命令历史 8.3 命令补全和别名 8.4 通配符 8.5 输入输出重

8.1 shell介绍8.2 命令历史8.3 命令补全和别名8.4 通配符8.5 输入输出重定向