发布于:,更新于:

Linux环境设置

  1. 工作环境设置文件

(1)系统环境

/etc/profile

(2) root用户的环境

/root/.bash_profile

  1. 将某一个目录/aaa加入工作环境文件,实现在任意位置均可执行该目录下面的程序

(1)建立/aaa文件夹,并加入工作环境文件

1
2
[root@master ~]# cd /
[root@master /]# mkdir /aaa

(2) 在/etc/profile中插入下面的内容:

1
2
3
4
5
6
7
[root@master /]# vi /etc/profile  
# 安装flume环境
export FLUME_HOME=/opt/apache-flume-1.7.0-bin
export PATH=$PATH:$FLUME_HOME/bin
# 将/aaa文件夹加入
export AAA_HOME=/aaa
export PATH=$PATH:$AAA_HOME

(3) 在/aaa中建立一个简单计时器脚本

1
2
3
4
5
6
7
8
9
10
11
12
13
14
[root@master /]# cd /aaa
[root@master aaa]# vi time01.sh
echo "start"
sleep 1;echo "----5----";
sleep 1;echo "----4----";
sleep 1;echo "----3----";
sleep 1;echo "----2----";
sleep 1;echo "----1----";
sleep 1;
echo "stop"
[root@master aaa]# chmod 777 ./time01.sh
[root@master aaa]# ll
总用量 4
-rwxrwxrwx. 1 root root 164 12月 11 08:28 time01.sh

(4) 使修改的工作环境文件生效

1
[root@master aaa]# source /etc/profile

(5)在任意位置均可执行:

1
2
3
4
5
6
[root@master aaa]# cd /
[root@master /]# time01.sh
start
----5----
----4----
----3----
  1. grep打印出所有符合指定规则的文本行
1
2
3
4
5
6
[root@master /]# cd /aaa
[root@master aaa]# ll
总用量 4
-rwxrwxrwx. 1 root root 164 12月 11 08:28 time01.sh
[root@master aaa]# grep 'start' time01.sh
echo "start"
  1. 正则表达式

所有的正则表达式需要用单引号括起来

. 匹配单个任意字符

[list] 匹配字符串列表中的一个字符

*  匹配前一个字符0次或多次

^ 在行头匹配正则表达式

  1. 重定向

重定向是指不使用标准的输入输出接口,而进行重新指定

< 输入重定向

或 > 输出重定向

2>或2>> 错误重定向

&> 同时实现输出重定向和错误重定向

1
2
3
[root@master ~]# ll /aaa
总用量 4
-rwxrwxrwx. 1 root root 164 12月 11 08:28 time01.sh

将/aaa文件夹的ll显示的内容保存到/root的result01.txt中

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
[root@master ~]# ll /aaa > result01.txt
[root@master ~]# ll
总用量 72
drwxr-xr-x. 4 root root    36 11月 16 2022 aaa
-rw-------. 1 root root  1257 11月 18 2021 anaconda-ks.cfg
drwxr-xr-x. 5 root root    39 11月 18 2021 localperl
-rw-------. 1 root root  1623 7月  11 21:08 nohup.out
drwxr-xr-x. 5 root root    39 11月 18 2021 perl5
-rw-r--r--. 1 root root    65 12月 11 09:09 result01.txt
-rw-r--r--. 1 root root 50112 7月  11 21:31 ShiSai2022-1.0-SNAPSHOT.jar
-rw-r--r--. 1 root root     0 11月 15 2022 spark-yarn-logs
-rw-r--r--. 1 root root  4175 11月 16 2022 zookeeper.out
[root@master ~]# cat result01.txt
总用量 4
-rwxrwxrwx. 1 root root 164 12月 11 08:28 time01.sh

把/tmp里面的内容追加到result01.txt中

1
2
3
4
5
6
7
8
9
10
11
[root@master ~]# ll /tmp
总用量 0
drwx------. 3 root root 17 12月 11 08:07 systemd-private-03f98bcc8dcb4c7b8b38ca9ae50eaf49-chronyd.service-XdsvpJ
drwx------. 2 root root  6 12月 11 08:07 vmware-root_8740-2865761114
[root@master ~]# ll /tmp >> result01.txt
[root@master ~]# cat result01.txt
总用量 4
-rwxrwxrwx. 1 root root 164 12月 11 08:28 time01.sh
总用量 0
drwx------. 3 root root 17 12月 11 08:07 systemd-private-03f98bcc8dcb4c7b8b38ca9ae50eaf49-chronyd.service-XdsvpJ
drwx------. 2 root root  6 12月 11 08:07 vmware-root_8740-2865761114

将文件的输出信息和错误信息保存到result02.txt中

1
2
3
4
5
6
7
8
9
10
11
[root@master ~]# date
2023年 12月 11日 星期一 09:15:08 CST
[root@master ~]# data
-bash: data: 未找到命令
[root@master ~]# data &> result02.txt
[root@master ~]# cat result02.txt
-bash: data: 未找到命令
[root@master ~]# date &>> result02.txt
[root@master ~]# cat result02.txt
-bash: data: 未找到命令
2023年 12月 11日 星期一 09:16:48 CST

课堂练习:

  1. 在/opt下建立文件夹/opt/bbb,并将该文件夹写入工作环境文件/etc/profile
1
2
mkdir /opt/bbb
echo "export PATH=$PATH:/opt/bbb" >> /etc/profile
  1. 在/opt/bbb中建立一个可执行文件hello.sh,可以向屏幕中打印一行hello world字符
1
echo "echo "hello world"" >> /opt/bbb/hello.sh
  1. 生效修改的工作环境文件/etc/profile
1
source /etc/profile
  1. 在/root目录中直接输入hello.sh进行验证
1
2
cd /root
sh hello.sh
  1. 用重定向符号将hello.sh的结果保存到/root/result001.txt中
1
sh hello.sh >> /root/result001.txt
  1. 打印/root/result001.txt
1
cat /root/result001.txt
  1. 用grep命令在/root/result001.txt中查找world字符
1
grep world /root/result001.txt