一、安装JDK及配置环境变量

首先我们得jdk是系统已经安装好了的

[root@bogon ~]# rpm -qa | grep jdk
java-1.8.0-openjdk-1.8.0.262.b10-1.el7.x86_64
copy-jdk-configs-3.3-10.el7_5.noarch
java-1.8.0-openjdk-headless-1.8.0.262.b10-1.el7.x86_64

卸载

[root@bogon ~]# rpm -e --nodeps java-1.8.0-openjdk-1.8.0.262.b10-1.el7.x86_64
[root@bogon ~]# rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.262.b10-1.el7.x86_64

在usr目录下创建java目录用于存放jdk压缩包,并解压

[root@bogon ~]# mkdir /usr/java
[root@bogon ~]# cd /usr/java
[root@bogon java]# rz
[root@bogon java]#tar -zxvf jdk-8u311-linux-x64.tar.gz
[root@bogon java]# ls
jdk1.8.0_311  jdk-8u311-linux-x64.tar.gz

配置环境变量

[root@bogon java]# vim /etc/profile
添加如下内容
JAVA_HOME=/usr/java/jdk1.8.0_311
JRE_HOME=$JAVA_HOME/jre
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export JAVA_HOME JRE_HOME PATH CLASSPATH

是配置文件生效

[root@bogon java]# source /etc/profile

测试

此时版本已经为我们新安装的版本了

[root@bogon ~]# java -version
java version "1.8.0_311"
Java(TM) SE Runtime Environment (build 1.8.0_311-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.311-b11, mixed mode)

二、Shell脚本中,$0, $1, $$, $* ,$?分别代表了什么意思?

$0:表示脚本文件的名称

$1:表示传递给该shell脚本的第一个参数

$$:表示Shell本身的PID(ProcessID,即脚本运行的当前 进程ID号)

$*:以一个单字符串显示所有向脚本传递的参数,与位置变量不同,参数可超过9个

$?:表示最后运行的命令的结束代码(返回值)即执行上一个指令的返回值 (显示最后命令的退出状态。0表示没有错误,其他任何值表明有错误)

三、写一个脚本:显示出当前的脚本文件名和当前的系统时间。

新建shell目录用于存放脚本文件

[root@bogon ~]# mkdir shell

编写名为xianshi.sh的脚本

[root@bogon shell]# vim xianshi.sh添加如下
#!/bin/sh
echo "this is name: $0"
echo "this is date: $(date)"

测试

[root@bogon shell]# sh xianshi.sh
this is name: xianshi.sh
this is date: Tue Oct 26 01:28:15 CST 2021

四、已知目录/scripts目录,执行batch.sh脚本,实现在/scripts目录下创建一个one.txt,在one.txt文件中增加内容“Hello Shell”。

创建脚本文件名为

[root@bogon shell]# vim ad.sh添加如下内容
#!/bin/bash
mkdir /scripts
if [ $? -eq 0 ];
thenecho "Hello Shell" > /scripts/one.txt
fi

测试

[root@bogon shell]# sh ad.sh
[root@bogon shell]# more /scripts/one.txt
Hello Shell

shell 第一次练习相关推荐

  1. linux 编写系统服务,Linux shell编写系统服务脚本

    事先准备工作:源码安装apache .安装目录为/usr/local/httpd 任务需求: 1.可通过 service httpd start|stop|status|restart 命令对服务进行 ...

  2. linux shell写服务,Linux shell编写系统服务脚本

    事先准备工作:源码安装apache .安装目录为/usr/local/httpd 任务需求: 1.可通过 service httpd start|stop|status|restart 命令对服务进行 ...

  3. 原版英文书籍《Linux命令行》阅读记录1 | 什么是shell?

    背景: 阅读英文原作只为了更好地理解书中的精髓,当然也是为了更好地掌握书中的技巧.我们会坚持阅读全书,并记录书中的精髓. 1. 理解 Linux 的 "自由" Many peopl ...

  4. 【转载】shell实例手册

    原文地址:shell实例手册  作者:没头脑的土豆 shell实例手册0说明{手册制作: 雪松更新日期: 2013-12-06欢迎系统运维加入Q群: 198173206请使用"notepad ...

  5. Shell 脚本大全

    文章目录 {#!/bin/sh # 在脚本第一行脚本头 # sh为当前系统默认shell,可指定为bash等shellshopt # 显示和设置shell中的行为选项sh -x # 执行过程sh -n ...

  6. shell实例手册 2021-4-10

    shell实例手册0说明{手册制作: 雪松更新日期: 2013-12-06欢迎系统运维加入Q群: 198173206请使用"notepad++"打开此文档,"alt+0& ...

  7. 转——shell实用手册

    shell实例手册 0说明{ 手册制作: 雪松 更新日期: 2013-12-06 欢迎系统运维加入Q群: 198173206 请使用"notepad++"打开此文档,"a ...

  8. (转) shell实例手册

    shell实例手册 1文件{ touch file              # 创建空白文件 rm -rf 目录名           # 不提示删除非空目录(-r:递归删除 -f强制) dos2u ...

  9. linux最全的命令大全,shell运维手册

    1 文件{          ls -rtl                 # 按时间倒叙列出所有目录和文件 ll -rt     touch file              # 创建空白文件 ...

  10. SHELL的一些实例

    检查SHELL语法: bash -n 1.sh 删除包含mysql关键字的软件包,删除其它软件以此类推 #!/bin/bash a=`rpm -qa|grep mysql*` for a1 in ${ ...

最新文章

  1. 【蓝桥java】递归基础之车辆进出栈
  2. 【原创】日志输出到串口设备导致的问题
  3. .NET 5.0预览版6发布:支持Windows ARM64设备
  4. yii+php+当前目录,Yii常用路径方法总结
  5. python登录并关注公众号_python微信公众号之关注公众号自动回复
  6. ESP8266使用历程
  7. spring oauth2 OAuth2AuthenticationProcessingFilter 校验token过滤器
  8. python正则表达式模块_Python正则表达式模块re
  9. 不同语言Sql Server的库交换出现乱码
  10. mysql sql中的一些问题,Null与空字符
  11. C# 专业的软件安装包
  12. Android项目(完整版+免费版)
  13. http://blog.csdn.net/lwj103862095/article/details/7860648
  14. 树莓派 与 Xbox360手柄 基于pygame 的一次邂逅
  15. qt程序在win10正常运行win7电脑上崩溃
  16. win10无法装载iso文件_win10系统iso文件怎么安装
  17. 5.GitHub pytorch sentiment analysis(Transformer版)
  18. 三星nfc添加门禁卡实测有效_今天才知道!iPhone手机还能变成门禁卡,60秒就能实现...
  19. DNW刷机210步骤和常见问题
  20. 计算机科学与技术学习心得

热门文章

  1. NFC:Arduino、Android与PhoneGap近场通信
  2. 第三:启发式搜索:A* 算法
  3. 条件随机场CRF - 学习和预测
  4. Scikit-learn:聚类clustering
  5. Scala:集合类型Collection和迭代器
  6. image 搜索docker_docker images命令-列出image
  7. android handler的机制和原理_Android消息机制的原理及源码解析
  8. C++使函数返回多个数组
  9. frdora10_a8_linux,硬盘安装fedora10
  10. Flutter 常见问题总结