Linux笔记07

2023-03-09 16:23:29 浏览数 (2)

Linux支持的shell在/etc/shells文件中

/bin/sh已经被/bin/bash取代

/bin/bash 是Linux默认的shell

/bin/tcsh 整合c shell,提供了更多的功能

/bin/csh依附于bsd版的unix的shell,被/bin/tcsh取代

/bin/ksh常用于商业版,兼容于bash

/bin/zsh基于ksh开发的,功能更强大

1.type name

不加任何参数时,type显示出name是外部命令还是bash内置的命令

-t type将name通过以下文字显示他的意思

file:表示为外部命令

alias:表示为命令别名所设置的名称

builtin:表示命令为bash内置的命令

-a在PATH变量定义的路径中,列出所有含有name的命令,包含alias

2.echo $变量名

如echo $PATH

3.env显示目前系统内主要的预定义变量内容

set可以将环境变量和用户变量显示出来

4.PS1

d 代表日期,格式为星期 月 日

t 24小时格式显示时间,HH:MM:SS

A 24小时格式显示时间,HH:MM

T 12小时格式显示时间,HH:MM:SS

H 完整的主机名称

h 只取主机名称的第一个名字

u 当前账户名

v bash版本信息

w 完整工作目录

W 只列出最后一个目录

# 执行的第几个指令

$ root用户提示符是#,其他用户提示符是$

PS1='[u@hdt##W]$'

将用户变量设置为系统变量

[root@192~]$name="kali"

[root@192~]$echo $name

kali

[root@192~]$bash

[root@192 ~]# echo $name

[root@192 ~]# exit

exit

[root@192~]$export name

[root@192~]$bash

[root@192 ~]# echo $name

kali

设置变量的注意

1.变量和变量名中间不能有空格

2.变量名不能以数字开头

3.

path=“/lib/modules/’ uname -r' /kernel/fs"

PATH="$PATH":/home/test1 添加系统环境变量

unset 删除环境变量

locale -a显示系统支持的所有变量

LANG=zh_CN.UTF-8

改变系统支持的语系,可修改/etc/sysconfig/i18n

-------------------------------------------------------

变量键盘读取和声明变量

read 变量

-p 后面可以接提示符

-t 后面可以接秒数

[root@192 ~]# clear

[root@192 ~]# read name

kali

[root@192 ~]# echo $name

kali

[root@192 ~]# read -p "what is your name?" name

what is your name?kali

[root@192 ~]# echo $name

kali

declare/typeset 变量

-a 声明的变量为数组

-i 整数数字 -r 变量为只读

-x 变量变成系统环境变量

数字a[i]

[root@192 ~]# sum=1 2 3

[root@192 ~]# echo $sum

1 2 3

[root@192 ~]# declare -i sum=1 2 3

[root@192 ~]# echo $sum

6

[root@192 ~]# bash

[root@localhost ~]# echo $sum

[root@localhost ~]# exit

exit

[root@192 ~]# declare -x sum

[root@192 ~]# bash

[root@localhost ~]# echo $sum

6

[root@localhost ~]# a[1]=1

[root@localhost ~]# a[2]=2

[root@localhost ~]# a[3]=3

[root@localhost ~]# echo ${a[1]}

1

[root@localhost ~]# echo ${a[1]},${a[2]},${a[3]}

1,2,3

------------------------------------------------------------

命令别名与历史命令

设置alias取消unalias

[root@localhost ~]# alias lm='ls -al |more'

[root@localhost ~]# lm

[root@localhost ~]# unalias lm

[root@localhost ~]# lm

bash: lm: 未找到命令...

history 显示历史命令

history 2 显示最近的2条命令

-c 将当前shell中的所有历史命令全部清空

-r 将histfile中的内容读到shell的命令记忆中

-w 将当前历史记忆内容写入到histfile中

! number :执行第几个指令的意思

! Command :执行以command开头的指令

! !:上一个指令的意思

[root@192 ~]# history -c

[root@192 ~]# history

1 history

[root@192 ~]# history -r

[root@192 ~]# history

1 history

2 history -r:

3 ifconfig

4 ip add

240 exit

241 history

[root@192 ~]# !241

history

1 history

2 history -r

3 ifconfig

0 人点赞