博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
64,管道符,控制命令,变量
阅读量:6913 次
发布时间:2019-06-27

本文共 2826 字,大约阅读时间需要 9 分钟。

管道符

注:管道符 就是 把上一个命令 的结果 丢给下一个命令来执行显示出来

如下:

案例一

[root@localhost /]# cat 1.txt | wc -l

19
[root@localhost /]#

案例二

[root@localhost /]# cat 1.txt | grep 1

bin:x:1:1:bin:/bin:/sbin/nologin
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
avahi-autoipd:x:170:170:Avahi IPv4LL Stack:/var/lib/avahi-autoipd:/sbin/nologin
[root@localhost /]#

控制命令

案例一:暂停一个命令

[root@localhost /]# yum install -y nfs

已加载插件:fastestmirror
Repository epel is listed more than once in the configuration
Repository epel-debuginfo is listed more than once in the configuration
Repository epel-source is listed more than once in the configuration
Loading mirror speeds from cached hostfile
^Z
[1]+ 已停止 yum install -y nfs
[root@localhost /]#
注:使用cat + z 为暂停

案例二:查看后台执行的命令

[root@localhost /]# jobs

[1]+ 已停止 yum install -y nfs
[root@localhost /]

知识小提示: bg 【id】 把程序 放到后台执行 fg [把命令] 放到前台执行 命令后面 加一个& 就是直接把丢到后台执行

变量

变量这个名词非常牛逼的,说白了 就把A的内容让B包含在里面。

案例一:如何查看系统变量

可以通过 set 可以查看系统预设的变量,env 命令可以查看全部变量

案例二:自定义变量

[root@localhost ~]# BBBBB=11111

[root@localhost ~]# set |grep BBBBB
BBBBB=11111
[root@localhost ~]#

注:

1、设定变量的格式为 “a=b”, 其中a为变量名,b为变量的内容,等号两边不能有空格;
2、变量名只能由英、数字以及下划线组成,而且不能以数字开头;
3、当变量内容带有特殊字符(如空格)时,需要加上单引号;
4、如果是带有命令的话 需要使用反引号\
特殊情况:

案例三:全局变量

[root@localhost ~]# export B=2222

[root@localhost ~]#
注:前面加一个命令 export 即可 全局变量了

案例四:取消变量

unset 变量名

知识小提示:

export声明变量后,切换到其他终端就失效了,如果需要时刻生效,则需要把变量加入到/etc/profile中

如果在当前shell中运行bash命令,则会进入一个新的shell,这个shell就是原来shell的子shell。可以用pstree命令查看。(安装pstree命令:yum install -y psmisc)pstree命令会把linux系统中的所有进程以树形结构显示出来。

[root@localhost ~]# pstree

systemd─┬─NetworkManager───2[{NetworkManager}]
├─agetty
├─auditd───{auditd}
├─avahi-daemon───avahi-daemon
├─crond
├─dbus-daemon───{dbus-daemon}
├─firewalld───{firewalld}
├─iprdump
├─iprinit
├─iprupdate
├─lvmetad
├─master─┬─pickup
│ └─qmgr
├─polkitd───5
[{polkitd}]
├─rsyslogd───2[{rsyslogd}]
├─sshd───sshd───bash───pstree
├─systemd-journal
├─systemd-logind
├─systemd-udevd
└─tuned───4
[{tuned}]
[root@localhost ~]#

变量配置文件

环境变量配置文件分为:

系统环境变量配置文件
用户环境变量配置文件。

系统级别的配置文件:如下

/etc/profile :这个文件预设了几个重要的变量,例如PATH, USER, LOGNAME, MAIL, INPUTRC, HOSTNAME, HISTSIZE, umask等等。

/etc/bashrc :这个文件主要预设umask以及PS1。这个PS1就是我们在敲命令时,前面那串字符了,例如我的linux系统PS1就是 [root@localhost ~]#, 我们不妨看一下PS1的值:
[root@localhost ~]# echo $PS1
[\u@\h \W]\$
[root@localhost ~]#
\u 就是用户, \h 主机名, \W 则是当前目录,\$ 就是那个 ‘#’ 了,如果是普通用户则显示为 ‘$’。

用户环境变量配置文件(在用户家目录下):如下

.ash_profile :定义了用户的个人化路径与环境变量的文件名称。每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次。

.bashrc :该文件包含专用于你的shell的bash信息,当登录时以及每次打开新的shell时,该该文件被读取。例如你可以将用户自定义的alias或者自定义变量写到这个文件中。
.bash_history :记录命令历史用的。
.bash_logout :当退出shell时,会执行该文件。可以把一些清理的工作放到这个文件中。

转载于:https://blog.51cto.com/sdwaqw/2060906

你可能感兴趣的文章
手抄代码1-24
查看>>
深入了解SCN
查看>>
Linux之Web服务(2)Httpd服务配置之二
查看>>
Nginx的安装与负载均衡配置
查看>>
wglCreateContext
查看>>
cacti 使用script query 详解 - 例子 监控mysql中数据库占用磁盘量【整理后】
查看>>
jenkins 内存泄露处理方法
查看>>
我的友情链接
查看>>
paramiko模块报异常:No handlers could be found for logge
查看>>
内网接口调用,ssh反向隧道与nginx反向代理
查看>>
LINUX 1-0学习前的准备及基础知识
查看>>
关连接此设备的正确安全设置,请查阅 SDK 文档
查看>>
PHP的起源与发展
查看>>
我所认识的JavaScript正则表达式
查看>>
wmsys.wm_concat用法和排错
查看>>
Javascript写入txt和读取txt文件示例
查看>>
Xamarin XAML语言教程使用使用Progress属性设置当前进度
查看>>
信息批量提取工具bulk-extractor
查看>>
Linux 修改网卡名eth0
查看>>
jsp中的绝对路径
查看>>