Shell基础:介绍、历史命令、命令不全和别名、通配符、输入输入重定向、管道发和作业控制

 



       Shell的介绍


 

  zsh、ksh(yum list |grep zsh 进行查看,然后可以相应的进行安装

        

                 命令历史

1. /root/.bash_history  (此文件存放着我们敲过的命令)


2. history (可以查看到我们之前使用过的命令有多少条。最大可以存1000条)

使用环境变量可以查看到存放了多少条命令 echo $HISTSIZE 

3. history -c 此命令是清除内存中我们敲过的缓存命令(当我们在当前终端敲命令时,它并不会立马保存到配置文件中,而是缓存在内存里) ,但这个命令是不会删除 /root/.bash_history 这个配置文件的内容。


4.敲过的命令什么时候才会保存在配置文件中?

 只有我们在正常退出终端的时候才能保存到配置文件中,否则只是暂时的保存到内存里(正常退出的命令:exit、logout)

5.环境变量$HISTSIZE 

在配置文件 /etc/profile 修改环境变量 $HISTSIZE

修改了变量的大小后,需要执行 source /etc/profile 或者重新进入终端才会生效

6.查看敲过命令是什么时候运行记录下来 HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S "

 (1)定义一下:HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S "

 (2)查看一下变量: echo $HISTTIMEFORMAT

但是此时我们定义的环境变量 $HISTTIMEFORMAT 仅仅是在当前的终端生效,如果重启仍然是不存在的

(3)永久生效,修改 /etc/profile

vi /etc/profile

添加内容:HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S "

7.命令历史永久保存 不让别人删除-->添加隐藏条件 -a 只能追加不能删除

 执行命令:chattr +a ~/.bash_history

条件+a 只能追加不能删除


8. exit / logout 为正常退出终端

不正常的退出终端时,使用过的命令就不会记录完全

!! 表示上一条命令

!n 表示历史第n条命令

!字符串 表示从下往上找最近使用过“字符串”的命令并执行



             命令补全和别名

1.tab键 不仅可以不全命令,也可以不全文件

2.参数不全

(yum install -y bash-completion)

3.alias别名:

设置自定义的别名:

alias 要起的名字='要代替的名字'

alias restartnet='systemctl restart network.service '

取消自定义的别名:

ualias restartnet



alias定义的地方

 各用户都有自己配置别名的文件 ~/.bashrc

 ls /etc/profile.d/


                 通配符

1.  *  :表示零个或者多个任意字符

2.  ?  :表示一个任意的字符

3.ls [0-3].txt

[范围]任意一个满足的条件,只取一个。

4.ls {1,2,3,a}.txt 取一个1或2或3或a


                   

                   输入输出重定向

1.> 重定向 cat 1.txt>2.txt (把1.txt的内容输入到2.txt)

2.>> 追加  cat 1.txt>>2.txt (不会把原来的内容删除,把1.txt的内容追加到2.txt)

3.ls aaa.txt 2>err  把前面的错误的信息输入到后面的文件中

3.ls aaa.txt 2>>err  把前面的错误的信息输入到后面的文件中

>+2 == &>

把[12]txt 正确的输入到a.txt ,把 aaa.txt错误信息写到b.txt


4.wc -l < 1.txt



                管道符、作业控制

管道符 | :把前面命令的的输出交给后面命令的输入


暂停任务:ctrl+ z  (临时暂停,仍到后台 ,调回前台 fg


jobs 可以把暂停的任务列出来。

fg +id号就能把相应暂停任务调回前台。 fg 2


bg 把任务放到后台


sleep 1000 暂停1000秒

sleep 100 &  加上&可以把运行任务如直接放到后台执行


 


原文地址:http://blog.51cto.com/13589255/2071971

时间: 2024-10-10 18:49:12

Shell基础:介绍、历史命令、命令不全和别名、通配符、输入输入重定向、管道发和作业控制的相关文章

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

8.1 shell介绍 shell 是一个命令解释器,提供用户和机器之间的交互 支持特定语法,比如逻辑判断,循环 每个用户都可以有自己特定的shell CentOS7默认shell 为bash(Bourne Agin Shell) 还有zsh.ksh等 yum zsh和ksh [[email protected] ~]# yum list |grep zsh zsh.x86_64 5.0.2-25.el7_3.1 updates zsh-html.x86_64 5.0.2-25.el7_3.1

shell基础:使用read、命令行脚本传参实现输入2个整数并计算

shell基础练习题:使用read交互输入,命令行脚本传参2种方式,实现输入2个整数数字,并计算加减乘除.考察shell基础知识包括:变量定义.read.if判断语句.正则表达式等知识: 第一种方式:read交互输入参数 思路为:判断输入的第2个变量是否为空,为空则提示输入2个数字:不为空则判断输入的是否为整数,用到expr,作用为让2个变量进行相加,如果结果为0说明输入2个为数字,如结果非0则说明输入非整数,提示输入的不是非整数: #!/bin/bash read -p "pls input 

Shell基础学习(四) echo命令

1.显示普通的字符串 echo "boring" 2.显示转义字符 echo "\"It is a test!\""; 3.read 命令从标准输入中读取一行,并把输入行的每个字段的值指定给 shell 变量 #!/bin/sh read name echo "$name It is a test" 以上代码保存为 test.sh,name 接收标准输入的变量,结果将是: [[email protected] ~]# sh t

Shell基础学习(五) test命令

1.数值测试 参数 说明 -eq 等于则为真 -gt 大于则为真 -lt 小于则为真 -nq 不等于则为真 -ge 大于等于为真 -le 小于等于为真 示例: num1=100 num2=100 if test $[num1] eq $[num2] then echo '二个数相等' else echo '二个数不相等' fi 输出:二个数相等 2.字符串测试 参数 说明 = 等于则为真 != 不等于为真 -z 字符串长度为零为真 -n 字符串长度不为零位真 示例: string1='liupf

linux的shell基础介绍(2)

8.6 管道符和作业控制: 1.cat 1.txt |wc -l ; cat 1.txt |grep 'aaa' 2.ctrl z 暂停一个任务 3.jobs查看后台的任务 4.bg[id]把任务调到后台 5.fg[id]把任务调到前台 6.命令后面加&直接丢到后台 管道符的作用:把前面命令输出的结果交给后面的命令. 示例: [[email protected] ~]# ls 111  1_heard.txt.bak  1.txt      234    3.txt  aming2      a

Erlang基础 -- 介绍 -- 历史及Erlang并发

前言 最近在总结一些Erlang编程语言的基础知识,拟系统的介绍Erlang编程语言,从基础到进阶,然后再做Erlang编程语言有意思的库的分析. 其实,还是希望越来越多的人关注Erlang,使用Erlang,壮大Erlang编程语言的社区. 说实话,我也没这么高尚,就是看到很多人对Erlang编程语言的误解,Erlang编程语言社区的凋零,招个Erlang开发难之又难,才萌生此念. 这次主要介绍Erlang编程语言.包括Erlang的简要历史以及应用场景,Erlang并发编程,Erlang编程

shell基础二十篇

shell基础二十篇 编者按:由 wingger  整理的 shell基础十二篇 以及L_kernel补充的第十三--二十篇,涉及shell 编程及使用的各个方面,又附有大量的例子,极适合初学者系统学习.如果配合網中人的shell 十三問? ,效果更加明显. 这里是其中的第十章 sed.  其他各章可察看相应的 link. shell基础1:文件安全与权限 http://bbs.chinaunix.net/thread-434579-1-1.html 附:Linux的用户和用户组管理 http:

shell基础(转)

shell基础1:文件安全与权限 http://bbs.chinaunix.net/forum/viewtopic.php?t=434579&highlight=wingger 附:Linux的用户和用户组管理 http://bbs.chinaunix.net/forum/viewtopic.php?t=438660&highlight=wingger shell基础二:查找技巧,find及xargs的使用http://bbs.chinaunix.net/forum/viewtopic.p

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

8.1 shell介绍 8.2 命令历史 8.3 命令补全和别名 8.4 通配符 8.5 输入输出重定向 # Linux shell 基础 # 8.1 shell 介绍 - 什么是shell 1. shell 是一个命令解释器,提供用户和机器之间的交互 2. 支持特定语法,比如逻辑判断.循环 3. 每个用户都可以有自己特定的shell 4. CentOS7 默认shell 为bash (Bourne Agin Shell) 5. 还有zsh.ksh等 ``` [[email protected]