UNIX SHELL基础知识总结(二)
1. vim,vi及ex的关系
vim不需要安装,vi为ex的“Visual Mode”,Vim是vi的高级版本;
2. Unix Shell 快捷键
Ctrl+a/e将光标定位到 命令的头/尾
Ctrl+u/k剪切光标前/后的内容 Ctrl+y 粘贴Ctrl+u/k的内容
3. Unix Shell中的时间提取
dt="`date +%F`" //2017-09-27
yy="`date +%Y`" //2017
mm="`date +%m`" //09
dd="`date +%d`" //27
hh="`date +%H`" //16
nn="`date +%M`" //10
4. export设置或显示环境变量
A. 查看:export
B. 设置:export PATH="$PATH:xxx"
5. 关于命令行执行命令文件时必须加./或bash才能执行的原因说明:
Unix按$PATH变量搜索用户的当前路径,而当前路径是不包括在此变量中的,所以要加"./"来表明。所以可以使用命令export path=$PATH:./将当前路径加入$PATH 中,而在命令行直接输入文件名即可!
8. 定时执行Crontab
特殊符号说明:*:任何时刻;,:分割; /n:每n个单位执行一次;
例:0 2 * * * / test.sh > output.file 2 >& 1 &
作用:将错误输出2重定向到标准输出1,然后将标准输出1存入文件output.file中;
具体使用:打开如下文件并添加上述示例代码即可:
9. 输出重定向2>&1 &
bash中,0,1,2分别代表STDIN_FILENO,STDOUT_FILENO,STDERR_FILENO,也即标准输入,标准输出和标准错误;
对于 2>&1 &,指的是将标准错误2重定向到标准输出1。此时1前面的&就是为了让bash将1解释成标准输出而不是文件1。至于最后一个&,则是让bash在后台运行;
10. 查看磁盘使用情况的查看:
du (Disk Usage) :逐个文件统计,可以跨区;
df(Disk Free):直接读取分区的超级块信息;
11. 关于UNIX中的"~":
对于root用户,"~"代表root用户;
对于一般用户,"~"代表当前用户的目录,如/JoyeZhou
12. 问题:在Windows中创建的文件,为什么在Unix下调用xc -l时,总是少算一行,why?
Windows操作系统中,文件以'\n'作为结束符.所以最后一行如果没有\n就会统计丢失.而Unix会自动在文件的结尾加上\n,再加上文件结束符EOF,所以Windows文件在Unix下会存在兼容问题。
13. 关于ksh调用脚本文件执行命令
在bash命令行中调用脚本文件时,需要使用ksh来进行调用,但调用脚本时当前脚本文件必须有可执行权限x;
14. 文件权限管理:
chmod:改变文件或目录的访问权限(先设文件夹权限);
用户组权限:r(read:4) w(write:2) x(execute:1)
*此处共有10位,第一位表示文件类型,其余9位由三个三元组字符rwx组成。第一个三元组表示文件所有者的权限;第二组表示文件用户组的权限,第三组表示所有其他用户的权限;
具体示例:chmod 777 FileName(777表示完全开放权限);
chown:改变文件或目录的所有者;
chgrp:更改文件/目录的用户组;
15. 利用set -x 与 set +x 进行脚本调试:
如:set -x
echo "Hello World!" => +echo 'Hello World!'
Hello World!
16. <<! 动态输入内容:
如:Command Block <<!
inputA
inputB
!
Ps:将参数依次传递给Command Block;
UNIX SHELL基础知识总结(二)的更多相关文章
- UNIX SHELL基础知识总结(一)
1. Unix常目录结构与作用: 2. 基本命令: $echo $date $who $who am i 3. 创建文件的几种方式: A. touch FileName 创建空文件 B. > ...
- Linux Shell 基础知识(二)
1.本文知识结构 2.文件的查询与检索 2.1. cd 目录切换 找到文件/目录位置:cd 切换到上一个工作目录: cd - 切换到home目录: cd or cd ~ 显示当前路径: pwd 更改当 ...
- Shell基础知识(二)
对于一个shell脚本来说,第一行是 "#!/bin/bash",这条命令中的 "#!" 告诉系统该用哪一款解释器来对该脚本进行解释,后面的"/bin ...
- linux系统shell基础知识入门二
条件判断语句 test或[],这两是等价的.但用[]这种可能看起来更简洁 必须在[符号和检查条件之间留出空格,而test命令之后也总是应该有一个空格 如果要把test 和then 放一行上,那么必须在 ...
- Linux shell基础知识(上)
Linux shell基础知识(上) 目录 一.shell介绍 二.命令历史 三.命令补全和别名 四.通配符 五.输入输出重定向 六.管道符和作业控制 七.shell变量 八.环境变量配置文件 九.b ...
- Linux Shell 基础知识(一)
1. 本文知识结构 2. shell 基础知识 2.1 shell 简单介绍 GNU bash shell 能提供对 Linux 系统的交互式访问,一般来说,使用快捷键 Ctrl + Alt + ...
- Java JDBC的基础知识(二)
在我的上一篇Java JDBC的基础知识(一)中,最后演示的代码在关闭资源的时候,仅仅用了try/catch语句,这里是有很大的隐患的.在程序创建连接之后,如果不进行关闭,会消耗更多的资源.创建连接之 ...
- LeetCode刷题191130 --基础知识篇 二叉搜索树
休息了两天,状态恢复了一下,补充点基础知识. 二叉搜索树 搜索树数据结构支持许多动态集合操作,包括Search,minimum,maximum,predecessor(前驱),successor(后继 ...
- HTTP基础知识(二)
接着上一章的内容:HTTP基础知识(一) 二.简单的HTTP协议 1.客户端:请求访问文本或图像等资源的一端称为客户端: 服务器端:提供资源响应的一端 2.以百度为例子 这是请求头: 在起始行 ...
随机推荐
- QT之Variant
QVariant识别类型的注册 QVariant识别类型的注册 QVariant为一个万能的数据类型--可以作为许多类型互相之间进行自动转换.将C++变为弱数据类型成为可能--也是许多控件中用户定义数 ...
- WC的基本功能实现.(Java)
我的GitHub地址:https://github.com/Yuetao1219/lessons WC 项目要求 wc.exe 是一个常见的工具,它能统计文本文件的字符数.单词数和行数.这个项目要求写 ...
- linux 系统启动
系统启动流程 BIOS 我们称之为基本输入输出系统,一般保存在主板上的BIOS芯片中,负责检查硬件并且查找可启动设备:可设置启动顺序: 如果一个设备是可启动,那么第一个扇区512字节的最后两字节是55 ...
- PyCharm社区版+Django搭建web开发环境-2
接上一篇:PyCharm社区版+Django搭建web开发环境-1 1. 创建好django项目并建立app应用:web 2. setting.py:配置app应用 INSTALLED_APPS = ...
- jQuery获取各种input输入框的值
1.获取一组radio单选框的值(name属性为一组的radio的name属性) var q1 = $("input[name=element_name]:checked").va ...
- 前台通过form表单向Django后台传输数据,Django处理后返回给前台
摘要:Django前后台数据传递 通过action将数据传输给apitest这个地址,使用get方法传递,此处需要传递name="request_method"的下拉列表值和nam ...
- asp.net(mvc) 框架
1.NFine mvc+ef 2.Grove orm架构 3.NHibernate orm 4.NBear 5.petshop 6.Membership 7.Brnshop 网上商城 8.cms快速开 ...
- OCP 12c最新考试原题及答案(071-7)
7.(5-1) choose two:View the Exhibit and examine the structure of the PRODUCTS table.Which two tasks ...
- 【lojg152】 乘法逆元 2(数学)
题面 传送门 题解 orz Wa自动机 这是一个可以\(O(n)\)求出\(n\)个数逆元的方案 先把所有的数做一个前缀积,记为\(s_i\) 然后我们用快速幂求出\(s_n\)的逆元,记为\(sv_ ...
- [Objective-C语言教程]程序结构(3)
1. Objective-C Hello World示例 Objective-C程序基本上由以下部分组成 - 预处理程序命令 接口 实现 方法 变量 声明和表达 注释 下面来看一下打印“Hello W ...