参考高峻峰 著 循序渐进Linux(第二版)

command [options] [arguments]

command:表示命令的名称

options:表示命令的选项

arguments:表示命令的参数

例如:

ls -a -l

ls -al

在shell的一个命令行中,还可以输入多个命令,用分好将各个命令分开,例如

#ls -al ; cp mylinux1.txt mylinux2.txt

也可以在多行中输入一个命令,用“\”将一个命令持续到下一行

#cp -i \
mylinux1.txt \
mylinux2.txt
  • shell的通配符

  bash中常用的通配符有“*”,"?","[]"

  "*":匹配任意一个或多个字符

  “?”:匹配任意单一字符

  “[]”:匹配任何包含在方括号内的单字符

  

#ls /dev/sda[]

#ls /dev/sda[-]
  • shell的重定向

  Linux下系统打开3个文件,即标准输入,标准输出,标准错误输出。

  用户的shell将键盘设为默认的标准输入,默认的标准输出和标准错误输出为屏幕。

  所谓的重定向,就是不使用系统默认的标准输入/输出而是重新指定。

  1.输入重定向

  操作符 “<” 和 “<<”

  输入重定向用于改变命令的输入源

  wc << aa(我没看懂这条命令是做什么的)

  2.输出重定向

  操作符“>” 和 “>>” 

#ps -ef > ps.txt

这条命令将ps -ef输出的系统运行进程信息全部输入到ps.txt文件

然后通过more命令查看ps.txt文件

#more file1 file2 file3 > file

将file1 file2 file3的内容全部输出到file文件中,类似于文件内容的合并

如果在“>”后面指定的文件不存在,shell就会自动创建一个;如果文件存在,那么这个文件原有内容将被覆盖;如果不想覆盖存在的文件,可以使用">>"操作符。

#ls -la /etc/* >>/root/install.log

将/etc目录及其子目录下的所有文件信息追加到/root/install.log文件的后面,文件原来的内容仍然存在

  3.错误重定向

  操作符:“2>” "2>>"

  tar zxvf text.tar.gz 2> error.txt

  如果text.tar.gz是个损坏的压缩包,就会把错误消息输出到error.txt文件

  • shell的管道

  管道可以把很多命令连接起来,管道的作用就是把第一个命令的输出当作下一个命令的输入。

  管道符 “|”

#ls -la /etc/* |more
  • shell中的引用  

  shell中用于引用的字符有转义字符“\”,单引号"'",双引号""""

#mv abc\?\* abc

? * 不在是通配符而只是字符? *

mv C\:\\backup backup
mv 'C:\\backup' backu

如果将字符串放到一对单引号间,那么字符串中所有字符的特殊含义将被忽略

双引号的引用与单引号基本相同,但仍有一些特殊字符保留自己的特殊含义比如 “$”,"\"和“‘”

shell的命令格式的更多相关文章

  1. Shell和命令基础

    什么是Shell Shell是系统的用户界面,提供了用户与内核进行交互操作的一种接口(命令解析器),Shell接收用户输入的命令并把它送入到内核去执行,结构如下图 Shell的功能 Shell最重要的 ...

  2. Linux Shell系列教程之(八)Shell printf命令详解

    本文是Linux Shell系列教程的第(八)篇,更多shell教程请看:Linux Shell系列教程 在上一篇:Linux Shell系列教程之(七)Shell输出这篇文章中,已经对Shell p ...

  3. Linux 操作基础(一) -- Shell 命令格式和元字符

    1 命令格式 cmd [-选项] [参数] 说明: • 最简单的Shell命令只有命令名,复杂的Shell命令可以有多个选项和参数 • 参数是文件也可以是目录,有些命令必须使用多个操作对象 • 并非所 ...

  4. linux命令格式及基础命令(一)

    linux命令格式 ~]#COMMAND [选项] [参数] 例如: ~]#ls 不带任何选项和参数 ``` stylus ~]#ls -lh /etc 列出/etc下所有文件和目录,同时要求以格式和 ...

  5. linux 基础 shell脚本命令

    #########shell脚本命令#### 1.diff diff file file1 ####比较两个文件的不同 -c ####显示周围的行 -u ####按照一格式统一输出生成补丁 -r ## ...

  6. 【Shell脚本学习14】Shell echo命令

    echo是Shell的一个内部指令,用于在屏幕上打印出指定的字符串.命令格式: echo arg 您可以使用echo实现更复杂的输出格式控制. 显示转义字符 echo "\"It ...

  7. Shell printf 命令

    Shell printf 命令 printf 命令模仿 C 程序库(library)里的 printf() 程序. 标准所定义,因此使用printf的脚本比使用echo移植性好. printf 使用引 ...

  8. Linux Shell : Test命令参数解析

    格式: test conditions test -n string : string 不为空 test -z string : string 为空 test int1 -eq int2  : int ...

  9. shell解析命令行的过程以及eval命令

    本文说明的是一条linux命令在执行时大致要经过哪些过程?以及这些过程的大致顺序. 1.1 shell解析命令行 shell读取和执行命令时的大致操作过程如下图: 以执行以下命令为例: echo -e ...

随机推荐

  1. navicat 12 破解

    一.安装 官方下载下载 http://www.navicat.com.cn/download/navicat-premium 二.安装完后下载破解文件 https://pan.baidu.com/s/ ...

  2. Java ConcurrentHashMap初始化

    初始化ConcurrentHashMap时可以指定map大小,由于ConcurrentHashMap代码默认大小是2n,这里需要把用户填的大小转换成2n备注:代码基于jdk 1.8.0_91Concu ...

  3. PAT 1056 Mice and Rice

    #include <cstdio> #include <climits> #include <cstdlib> #include <vector> #i ...

  4. linux系统设置虚拟内存

    1. 情景:centos7源码编译mysql5.7.22时,因为服务器内存不足导致编译失败(源码编译至少需要1G内存).报错信息如下: c++: Internal error: Killed (pro ...

  5. HTML表单特别效果—音量调节,购物数量

    <form oninput="x.value=parseInt(a.value)+parseInt(b.value)">0<input type="ra ...

  6. ArcGIS软件操作——地图制图

    ArcGIS软件操作系列二(地图制图) 2016年毕业,参加工作,除了平时出差,大部分时间都在使用ArcGIS处理数据.制图,在此,先将一些制图的小心得撰写出来,希望能与各位共同交流. 1 数据准备: ...

  7. Flask中数据库关联与分页与cache缓存(十二)

    1 一对多(One To Many) 表示一对多的关系时,在子表类 Post 中需要通过 foreign key (外键)引用父表类 User 在Post类中指定ForeignKey: class P ...

  8. scrum3

    首先我一直做的是框架的设计,但不同的是这次我们整合完善了这个软件目前的所有需求也定义好了它的大题框架,总的来说设计部分已经结束,现在也就是本次冲刺,我们将重点进行整个软件的数据库编程环节,也就是用SQ ...

  9. 新手理解HTML、CSS、javascript之间的关系-修订

    几年前写过一篇博文 <新手理解HTML.CSS.javascript之间的关系>,没想到网上出现了不少转载,当时没有太用心,里面的很多内容有待商榷,这里发布重新发布一篇. 网页主要有三部分 ...

  10. HDU 5805

    题意: 退役狗 NanoApe 滚回去学文化课啦! 在数学课上,NanoApe 心痒痒又玩起了数列.他在纸上随便写了一个长度为 nn 的数列,他又根据心情随便删了一个数,这样他得到了一个新的数列,然后 ...