linux的shell基础(慕课网笔记)
来源:互联网 发布:淘宝客申请推广理由 编辑:程序博客网 时间:2024/06/06 07:36
Shell是一个命令解释器,提供了用户与内核进行交互操作的一种接口
查看当前的shell:
echo $SHELL
脚本执行方式:
echo输出命令: 作用:把指定内容输出到屏幕上
echo [选项] [输出内容]
选项: -e 支持反斜线控制的字符转换
eg. echo "hello,world" #屏幕输出:hello,world
第一个脚本:
编写:
vi hello.sh
内容:
#!/bin/bash
#the first program
echo -e "\e[1;34m 天下掉下个林妹妹 ! \e[0m"
Tips:
#!/bin/bash 是linux脚本的标注内容,放在第一行,不是注释
执行脚本:
方法一:赋予执行权限,直接运行
chmod 755 hello.sh
./hello.sh #./表示在当前目录下的hello.sh
方法二:通过Bash调用执行脚本(不用执行权限)
bash hello.sh
Bash的基本功能:
1.命令别名与快捷键
2.历史命令
3.输出重定向
4.多命令顺序执行
4.shell中特殊符号
1.命令别名与快捷键
查看系统的别名:alias
设定命令别名:(重启失效,临时有效)
alias 别名='原命令'
eg alias cc='rm' alias vi='vim'
永久生效与删除别名:
vi ~/.bashrc #写入环境变量配置文件
unalias 别名 #删除别名(临时删除)
source .bashrc #调用这个文件一遍,就可以生效了
常用快捷键:
ctrl+c 强制终止当前命令
ctrl+l 清屏
ctrl+a 光标移动到命令行首
ctrl+e 光标移动到命令行尾
ctrl+u 从光标所在位置删除到行首
ctrl+z 把命令放入后台
ctrl+r 在历史命令中搜索
历史命令:
history [选项] [历史命令保存文件]
选项:
-c 清空历史命令
-w 把缓存中的历史命令写入历史命令保存文件~/.bash_history
Tips:历史命令默认保存1000条,可以在环境变量配置文件/etc/profile中进行修改
历史命令的调用:
使用上下箭头调用以前的历史命令
使用 !n 重复执行第n条历史命令
使用 !! 重复执行上一条命令
使用 !字串 重复执行最后一条以该字串开头的命令
例如:service network restart可以用 !ser
命令和文件补全:
在Bash中,命令与文件补全是非常方便与常用的功能,我们只要在输入命令或文件时,按Tab键就会自动进行补全
命令补全其实是在echo $PATH环境变量中搜索相应的命令
目录补全是依赖操作目录
输出重定向
保存命令的正确输出:
ls > test.log #命令执行不输出,而是保存到日志,新建test.log或者覆盖原来内容
ls >> test.log #新建或者追加内容
cat test.log #查看
保存命令的错误输出:
ddss 2>> test.log #ddss是错误命令
正确错误输出同时保存:
命令 >> 文件 2>&1 #追加
命令 &>> 文件 #追加
命令 > 文件 2>&1 #覆盖
命令 &> 文件 #覆盖
eg ifconfig >> test2.log 2>&1 ssdld >> test2.log 2>&1
ls &> /dev/null #把命令输出扔掉,/dev/null是黑洞
命令 >> 文件1 2>>文件2 #正确的追加输出到文件1,错误的追加到文件2
输入重定向:
wc [选项] [文件名]
选项: -c统计字节数 -w统计单词数 -l统计行数
wc -cwl test.log #输出行数,单词数,字节数,文件名test.log
wc <acc.log #把输出放到文件里面
管道符:
命令1 | 命令2 #命令1的正确输出作为命令2的操作对象
eg. ls -l /etc | more
0 0
- linux的shell基础(慕课网笔记)
- Linux Shell 基础学习笔记
- Linux-shell基础复习笔记
- Linux笔记10-Shell基础
- Linux笔记12-Shell基础
- Linux学习笔记-------shell基础
- Linux的shell基础
- shell最基础的笔记
- Linux学习笔记---shell脚本基础
- linux 基础与shell编程[笔记]
- linux基础学习笔记-3-shell变量
- linux基础学习笔记-4-shell编程
- Linux运维笔记----shell基础命令
- Linux学习笔记(2)-Shell基础
- linux 笔记(五)(Shell基础)
- Linux的Shell编程基础
- Linux的shell基础教学
- Linux的shell脚本基础
- VIM进阶大全
- Android Studio开发JNI工程
- 笛卡尔坐标系和三维空间的关系
- [leetcode 90] Subsets II
- 性能测试指标的基本概念
- linux的shell基础(慕课网笔记)
- String基本方法学习笔记
- Cocos2d-x怪物智能AI怪物也有智商----之游戏开发《赵云要格斗》(6)
- c/c++常见面试题
- Firebug入门指南
- gradle学习(13)-有的没的
- Quick Tip: Configure Static IP in Centos 6.5
- kali linux telnet
- 数据结构课程设计 第四题