Bash初识
翻译官
bash的作用
1)文件管理
增: 创建
删: 删除
改: 修改
查: 查找
2)权限管理
3)用户管理
4)磁盘管理
5)网络管理
6)软件管理
7)应用管理
...等等管理
shell的执行方式
- 脚本
- 效率高
- 适合复杂工作
- 输入命令
- 效率低
- 适合少量简单的工作
查看bash版本
bash --version
GNU bash, version 4.2.46(2)-release (x86_64-redhat-linux-gnu)
Copyright (C) 2011 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
# 查看当前登陆的用户名
whoami
bash命令提示符
# 查看默认命令提示符
echo $PS1
\d :代表日期,格式为weekday month date,例如:"Mon Aug 1"
\H :完整的主机名称
\h :仅取主机名中的第一个名字
\t :显示时间为24小时格式,如:HH:MM:SS
\T :显示时间为12小时格式
\A :显示时间为24小时格式:HH:MM
\u :当前用户的账号名称
\v :BASH的版本信息
\w :完整的工作目录名称
\W :利用basename取得工作目录名称,只显示最后一个目录名
\# :下达的第几个命令
\$ :提示字符,如果是root用户,提示符为 # ,普通用户则为 $
# 进入管理员home目录
cd /root
[root@localhost ~ 20:06:20]#ll -a
total 36
dr-xr-x---. 2 root root 160 Mar 9 20:06 .
dr-xr-xr-x. 17 root root 224 Mar 8 19:12 ..
-rw-r--r--. 1 root root 104 Mar 9 19:53 1.sh
-rw-r--r--. 1 root root 4 Mar 9 19:00 1.txt
-rw-------. 1 root root 1448 Mar 8 19:14 anaconda-ks.cfg
-rw-------. 1 root root 831 Mar 9 20:06 .bash_history
-rw-r--r--. 1 root root 18 Dec 29 2013 .bash_logout
-rw-r--r--. 1 root root 176 Dec 29 2013 .bash_profile
-rw-r--r--. 1 root root 224 Mar 9 20:06 .bashrc
-rw-r--r--. 1 root root 100 Dec 29 2013 .cshrc
-rw-r--r--. 1 root root 129 Dec 29 2013 .tcshrc
# 修改 .bashrc
vi .bashrc
# 在文件最后一行写入
PS1='\[\e[32;40m\] \[[\u@\h \w \t]\$ \[\e[0m\]'
## 注意!!这是在vi 里的快捷键,在命令行中无效
o 跳转光标下一行并进入编辑模式
i 在光标行进入编辑模式
ESC
退出编辑模式
shift+zz 保存退出
# 让文件生效
source .bashrc
# 任选其一
PS1='\[\e[32;40m\] \[[\u@\h \w \t]\$ \[\e[0m\]'
PS1="\[\e[37;40m\][\[\e[32;40m\]\u\[\e[37;40m\]@\h \[\e[36;40m\]\w\[\e[0m\]]\\$
"
PS1="\[\e[37;40m\][\[\e[32;40m\]\u\[\e[37;40m\]@\[\e[35;40m\]\h\[\e[0m\] \
[\e[36;40m\]\w\[\e[0m\]]\\$ "
修改网络配置
vi /etc/sysconfig/network-scripts/ifcfg-ens33
vi=#编辑
/etc/sysconfig/network-scripts/ifcfg=#网卡根目录地址
ens33=#网卡名
D:# 删除当前行所有信息
U:# 撤回修改
如果要设置的话 按**I**进入#插入编辑模式
退出按# esc,shift+z+z
bash初识02
shell的基本用法
命令 [-options] arguments
command -选项 参数(动作对象) 目录名/路径
命令(必须在顶格)
格式:
#命令空格[选项]空格[参数]
ls---> #目录
list #列表形式展开
-a 显示目录下的所有文件(包含隐藏文件)
-l 查看文件的详细信息
Bash shell的基本特性
当使用windows查找一个目录层级特别多的文件时,打开的效率会非常的慢,但如果使用linux查找一个目录
层级特别多的文件时,可以通过tab键#快速补全。
# 命令补全
# 参数补全
选项补全(尽量记下来)
# 如果按tab后无法补全
1) 命令打错
2) 没有安装bash-completion
yum install -y bash-completion
命令快捷键
ctrl + l #清屏(只是把最后一行命令置顶)
ctrl + c #终止命令执行
ctrl + a #让光标跳转至行首
ctrl + e #让光标跳转至行末
ctrl + w #以空格为分隔符,删除光标到空格前的命令
ESC + . #获取上一条命令最后的参数
ctrl + d 退出登陆
ctrl + z 将命令挂后台运行
ctrl + k 删除光标所在至行末的所有字符
ctrl + u 删除光标所在至行首的所有字符
ctrl + r 搜索历史命令,利用关键字查找
ctrl + s 锁屏
ctrl + q 解锁
ctrl + <- 按单词左移动
ctrl + -> 按单词右移动
history
# 查看历史记录
history
# 清空历史命令
history -c
# 删除指定的历史命令
history -d x(编号)
# 保存历史命令到文件
history -w
/root/.bash_history
# 执行上一条命令
!!
# 执行上一条相关命令
!+vi(命令)
# 执行历史命令中的命令
!+x(在history中的编号)
别名
# 临时设置别名(小名),一旦重启就会失效
alias hi='history'
alias wk='vi /etc/sysconfig/network-scripts/ifcfg-ens33'
alias 别名='命令'
别名不能以命令为名
# 取消临时别名(小名)
unalias hi
unalias wk
unalias 别名名称
# 永久设置别名
vi /etc/bashrc(设置永久别名)
### vi /roor/.bashrc(设置命令提示符)
按G(shift+g=大写G) 跳转至文本最后一行
按o 在光标所在行下面进入编辑模式
输入你要设置的别名
alias tong='ping baidu.com'
#生效文件
source /etc/bashrc
#查看所有别名
alias
命令帮助手册
#获取ls命令的帮助
[root@db04 ~]# ls --help
用法:ls [选项]... [文件]...
#ls常见选项
# -a //查看目录下的所有文件,包括隐藏文件
# -l //以长格式的方式显示文件的详细内容
-h //以人性化的方式显示内容,配合-l使用
# -d //只列出目录名,不列出目录以下的内容
-t //按修改时间进行排序
-i //显示文件的inode(该文件在该分区的一个编号)
-r //倒叙
[root@db04 ~]# man ls
绝对路径&相对路径
# 绝对路径
带/
例:/etc
# 相对路径
不带/
例:etc
# 特殊的绝对路径
在超级管理员状态下
~ --> /root
在普通用户状态下
~ --> /home/(用户名)