Linux的常用符号、磁盘管理 、 Linux shell (重点) 变量

linux

linux的常用符号

管道: 用“|” 表示管道

作用:前面的命令结果通过管道给后面的命令使用

eg:cat /etc/passwd | grep root

追加:用“>>” 覆盖:“>”

磁盘管理

1.查看系统磁盘空间

df -h 就是查看linux系统里面每个盘符的使用情况

2.磁盘的管理命令 fdish

fdisk -l 查看磁盘的管理信息

3.管理硬盘的分区

fdisk 硬盘名称

a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition
l list known partition types
m print this menu
n add a new partition 创建一个新分区
o create a new empty DOS partition table
p print the partition table
q quit without saving changes 不保存退出
s create a new empty Sun disklabel
t change a partition’s system id
u change display/entry units
v verify the partition table
w write table to disk and exit 保存退出
x extra functionality (experts only)

新创建的分区需要格式化
mks.ext4(文件系统) /dev/sdb1
eg:mkfs.ext4 /dev/sdc1

挂载分区:
1 创建挂载的目录
   mkdir /root/data2   
2 执行挂载的命令
   mount /dev/sdc1 /root/data2
      
以上的方式为临时挂载(重启之后失效)      
永久挂载,必须进行配置文件
vi /etc/fstab
 
type:文件系统的类型:Linux支持的类型   ext3 ext2 ext4 swap nfs ntfs fat32 iso9660 

 表示内容的备份:1 表示备份 0表示不备份
 检查硬盘  0 不检查 1 表示检查 /路径必须设置为1 ,其他的路径不能设置
  为1 ,其他的检查顺序按照数字从小到大开始
 范例: 编写永久挂载的配置文件
 mydisk                  /root/data2             ext4   defaults  0 0

4.服务管理命令

service:服务管理命令

service network [start|stop|restart|status]

防火墙:

service iptables [start|stop|restart|status]

在以后的集群搭建过程中,所有的节点必须关闭防火墙

service iptables stop 关闭的方法

以上的关闭方式,也是临时的,重启之后防火墙自动开启

想要永久关闭,chkconfig (服务开启启动配置)

chkconfig --list 查看当前系统有哪些启动服务

查看防火墙启动的状态:

chkconfig --list iptables

关闭或者开启 f服务的启动

chkconfig iptables on|off

Linux shell变量

#!/bin/bash

echo “Hello world” 打印hello world

1)#!是一个约定的标记,告诉系统脚本用什么解释器来执行

2)echo 标准的输出命令 打印屏幕

3)# 代表注释

shell脚本执行:
[root@hadoop01 data]# ./test.sh  -->>  这个必须给定脚本可执行的权限x 

[root@hadoop01 data]# bash test.sh 

[root@hadoop01 data]# source check.sh  使用source命令不用增加脚本的执行权限,并且不写./也可以
source命令是启动的同一个进程

1)判断是否是交互式的shell

查看 变量-的值 如果值中包含了字母i 表示交互式否则表示非交互式 用"$-"查看

​ [root@hadoop01 data]# bash test2.sh

​ hB

​ [root@hadoop01 data]# echo $-

​ himBH

2)判断是否所为登陆模式

​ 需要执行命令: shopt login_shell 取值:on 表示登陆 off非登陆

shell变量

eg:定义变量

​ [root@hadoop01 data]# url=www.qianfeng.com

​ [root@hadoop01 data]# echo $url ——>>www.qianfeng.com

​ [root@hadoop01 data]# name=‘我非常爱学习’

​ [root@hadoop01 data]# echo $name -—>>>我非常爱学习

单引号和双引号的区别:单引号表示是什么就打印什么,双引号会先解析变量的内容

​ #!/bin/bash

​ url=“wwww.baidu.com

​ website1=‘百度:${url}’

​ website2=“百度:${url}”

​ echo $website1

​ echo $website2

命令的结果赋值给变量

​ [root@hadoop01 data]# log=$(cat /etc/passwd)

​ [root@hadoop01 data]# echo $log

只读变量

​ readonly url

删除变量

​ unset 变量名称

​ [root@hadoop01 data]# unset name

shell的全局变量

​ 所谓全局变量指的是变量在当前整个shell进程都有效

​ 每个shell进程都有自己的作用域,彼此之间互不影响

​ 范例: 分别创建两个脚本 a.sh b.sh

​ [root@hadoop01 data]# vi a.sh

​ [root@hadoop01 data]# vi b.sh

​ [root@hadoop01 data]# cat a.sh

​ #!/bin/bash

​ echo $a

​ b=200

​ [root@hadoop01 data]#

​ [root@hadoop01 data]# cat b.sh

​ #!/bin/bash

​ echo $b

​ [root@hadoop01 data]# a=99

​ [root@hadoop01 data]# chmod u+x a.sh

​ [root@hadoop01 data]# ./a.sh

​ [root@hadoop01 data]# source a.sh

​ 99

​ [root@hadoop01 data]# source b.sh

​ 200

环境变量

export 将全局变量导出 就可以在所有的子进程中有效,称为环境变量

shell 的位置参数

​ eg:[root@localhost data]# bash test.sh 参数1 参数2…….

Linux中特殊的变量

​ $0 当前脚本的文件名

​ $$ 当前shell进程的ID

​ $* 传递给脚本的所有参数

​ $@ 传递给脚本的所有参数

​ $# 传递给脚本参数的个数

​ 当被双引号包围的时候就存在区别:

​ “$*” 会将所有参数从整体看做一份数据,而不是把每份参数看作一份数据

​ “$@” 仍将每个参数看作一份数据,彼此之间是独立的

猜你喜欢

转载自blog.csdn.net/root1994/article/details/90047337