1. Unix常目录结构与作用:

2.  基本命令

$echo

$date

$who

$who am i

3.  创建文件的几种方式

A. touch FileName 创建空文件

B. > FileName  创建空文件

C. vi FileName  创建空文件并开始编辑其中内容

D. cat /dev/null > FileName 创建空文件

4. 文件操作:

$rm:删除文件;(rm -rf FilePath:强制删除FilePath及其下的所有内容;r:向下递归;f:强制删除,不做任何提示)

$cp:文件复制;

$mv:文件重命名;

$cat:查看文件内容;

$ls[list]:(-l 显示文件详细描述信息)查看当前目录中的文件;

$wc:(-l:行数;-c:字符数;-w:单词数)统计文件中的单词数量;

$ln:链接文件;

$sort:排序;

$file:查看文件类型;

5. 文件夹操作:

$.:当前目录;

$mkdir(Make Directory):创建目录;

$cd(Change Directory):切换目录;

$pwd(Print Working Directory):显示宿主目录;

$rmdir(Remove Directory)删除目录;

$mv:文件移动

6. 文件基本类型:

以‘_’开头为普通文件;

以‘b’开头为块设备(Block Device);

以‘c’开头为字符设备(Character Device);

以‘s’开头为Socket文件;

以‘p’开头为Pipe文件;

以‘l’开头为字符链接文件;

以‘d’开头为目录文件;

7. 字符匹配:

*:匹配0个或以上的字符;

?:匹配1个字符;(??匹配两个字符)

[]:匹配一个范围,如[a-np-z]匹配一个除o之外的任何小写字母;

!:反匹配,如[!H]匹配任何不以大写字母H开头的所有字符;

8. 标准输入/输出/错误:

>:输出重定向;

<:输入重定向;

echo CONTENT > FileName:覆盖文件中的数据;

echo CONTENT >> FileName:将CONTENT追加到文件中;

9.  关于过滤器的定义:

能够从标准输入中接受输入,对输入进行处理后,再把结果写入标准输出的任何程序。如wc为过滤器,而ls则不是,因为它不能从标准输入中读取输入;

10.  uniq 在文件中查找重复行:

用法:uniq in_file out_file;

-d:把重复行写入out_file中,只写入一次;

-n:显示重复出现的行号;

11. cut 从数据文件或命令行的输出中提取数据

cut -c chars file:chars指想从文件中提取的文字内容;

paste(-d:指定一个分隔符;-s:(把同一个文件中的行粘在一起,而不是其他文件中)把多行合在一起;

12. sed(不对原始文件作出任何改变)

流式处理数据,不可以进行交互操作,用户新增行,删除行,显示及替换行;

13. tr 转换来自标准输入的字符:

命令格式:tr from-chars to-chars

-c:替换from-chars到to-chars;

-s:压缩to-chars中重复出现的字符,只保留第一个;

-d:删除输入流中的字符,如:tr -d from-chars

14. grep 从文件或流中提取特定的字符串

-v:显示不包含指定模式的行;

-l:显示包含指定模式的行;

-n:显示符全指定模式的行所在的行号;

15. sort 排序

-u:在输出结果中去掉重复行;

-r:反转排序的顺序;

-o:把输出结果写入标准输出;

-n:把行中的第一个字段当做数值,数据按算术方法排序;

16. 单引号和双引号的区别:

SHELL中会保留单引号中的任何特殊字符,如echo '$file' => $file

而双引号会保留除$,`及\之外的所有字符,即所下所示的echo "$X"也会对变量名进行替换而不做文件名的替换:

X=*
echo $X => File Name List
echo '$X' => $X
echo "$X" => *

17. 整数操作符:

-eq:等于;-ne:不等于;

-ge:大于或等于;-gt:大于;

-le:小于或等于;-l:小于;

18. 常见符号表示:

$#:传递给脚本文件的参数个数;

$0:获取当前脚本的文件名称;

$1:获取第一个参数;

$2:获取第二个参数;

$@:获取传递给脚本文件的所有的参数列表;

$*:以一个单字符串显示所有向脚本传递的参数,可>9;

$$:脚本运行的当前进程ID号;

$?:显示最后命令的退出状态,0表示无错误;

19. tar:文件的打包,压缩解压

A:文件打包

$tar -cvf xxx.tar FileA,FileB

-c:创建tar文件;

-v:列出详细的执行过程;

-f:创建的tar文件的文件名。

B:解开tar文件

$tar -xvf xxx.tar

-x 用于解开tar文件。

C:文件打包并压缩

$tar-cvzf xxx.tar.gz FileA,FileB

-z:自动调用gzip程序完成打包与压缩;

D:解压xxx.tar.gz文件

$tar -xzf xxx.tar.gz

该命令相当于以下两个命令:

$gzip -dv xxx.tar.gz      => xxx.tar

$tar -xvf xxx.tar            => FileName

20. 其他操作:

管道:$ls -l | grep "psw";

一行键入多行命令(用分号隔开):date;pwd;

命令发送到后台执行:&

切换用户(用法:su root)

UNIX SHELL基础知识总结(一)的更多相关文章

  1. UNIX SHELL基础知识总结(二)

    1. vim,vi及ex的关系 vim不需要安装,vi为ex的“Visual Mode”,Vim是vi的高级版本: 2. Unix Shell 快捷键 Ctrl+a/e将光标定位到 命令的头/尾 Ct ...

  2. Linux Shell 基础知识(一)

    1. 本文知识结构 2. shell 基础知识 2.1 shell 简单介绍 ​ GNU bash shell 能提供对 Linux 系统的交互式访问,一般来说,使用快捷键 Ctrl + Alt + ...

  3. Linux shell基础知识(上)

    Linux shell基础知识(上) 目录 一.shell介绍 二.命令历史 三.命令补全和别名 四.通配符 五.输入输出重定向 六.管道符和作业控制 七.shell变量 八.环境变量配置文件 九.b ...

  4. shell基础知识讲解

    第1章 shell基础 1.1 什么叫做shell编程 shell编程也叫做bash高级编程语法 1.2 常见的shell命令解释器 bash            redhat和centos使用 d ...

  5. Shell 基础知识和总结

    调试脚本 检查脚本语法错误 bash -n /path/to/some_script 调试执行 bash -x /path/to/some_script shell里的变量 本地变量:只对当前shel ...

  6. shell基础知识总结

    1. shell 对于一台计算机而言,其硬件受系统内核的控制,使用者想要控制计算机,就必须有与系统内核进行通讯的手段.而shell就是使用者与计算机进行通讯的手段之一.从命名上看,shell其实是相对 ...

  7. shell基础知识---与监听服务器长连接端口状态

    从未写过脚本我的最近接了俩脚本的需求,就在这分享一下我的我学到基础知识主要就四部分内容 一.变量 变量的定义 string='字符串' string="字符串" num=808st ...

  8. shell从入门到精通进阶之一:Shell基础知识

    1.1 简介 Shell是一个C语言编写的脚本语言,它是用户与Linux的桥梁,用户输入命令交给Shell处理,Shell将相应的操作传递给内核(Kernel),内核把处理的结果输出给用户. 下面是处 ...

  9. shell基础知识

    Shell 学习基础 1.组合命令的符号 管道,将前面一个命令的结果作为后面一个命令的输入 分号,顺序执行用分号分割的命令 重定向,重定向包括三种:输入重定向.输出重定向.错误重定向,以7个不同的符号 ...

随机推荐

  1. 一个java多线程面试题

    线程a 打印 数字 0--12: 线程b 打印 字母 a--z; 打印结果:0ab1cd2ef3gh4ij5kl6mn7op8qr9st10uv11wx12yz 要求用到 线程间传值: 分析:线程a打 ...

  2. JAVA中简单的MD5加密类(MD5Utils)

    MD5加密分析:   JDK API:   获取对象的API:   加密的API:   package cn.utils; import java.security.MessageDigest; im ...

  3. 设计模式21:State 状态模式(行为型模式)

    State 状态模式(行为型模式) 动机(Motivation) 在软件构建过程中,某些对象的状态如果改变,其行为也会随之而发生变化,比如文档处于只读状态,其支持的行为和读写状态的行为就可能完全不同. ...

  4. 编写高质量代码改善C#程序的157个建议——建议75:警惕线程不会立即启动

    建议75:警惕线程不会立即启动 现代的大多数操作系统都不是一个实时的操作系统,Windows系统也是如此.所以,不能奢望我们的线程能够立即启动.Windows内部会实现特殊的算法以进行线程之间的调度, ...

  5. CentOS系统中Tomcat安装配置

    Tomcat简介 Tomcat是Apache软件基金会(Apache Software Foundation)的Jakarta项目中的一个核心项目,由Apache.Sun和其他一些公司及个人共同开发而 ...

  6. C,C++面试题2

    面试题1:变量的声明和定义有什么区别为变量分配地址和存储空间的称为定义,不分配地址的称为声明.一个变量可以在多个地方声明,但是只在一个地方定义.加入extern修饰的是变量的声明,说明此变量将在文件以 ...

  7. 修复DBGrideh使用TMemTableEh在Footers求平均值为0的Bug

    在一个项目中,使用DBGrideh,当使用自带的内存数据集时,对于Footers添加的求平均值,一直显示为0,其他汇总数据都是可以的,而切换使用TClientDataSet或者TADODataSet, ...

  8. WEB应用从服务器主动推送的方法

    1.短轮询 2.长轮询 3.iframe 4.sse 5.Web Scoket

  9. Nginx源码编译

    1. 概述 有时由于添加了自己编写的c++模块,或者改了源码的一些名称.配置什么的,需要自行编译nginx. 可以先下下来源码,然后需要的话就自己改下源码或增加模块,最后再编译成linux或者wind ...

  10. 浅谈K8S cni和网络方案

    此文已由作者黄扬授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 在早先的k8s版本中,kubelet代码里提供了networkPlugin,networkPlugin是一组接 ...