Shell常用命令

简介:

 自以为前端工程师可能用不到Shell命令。但在学习Git时,发现除了Git命令,还有好多是需要Shell命令来配合的。所以,Shell命令需要系统的学习并进行总结,本文将详细介绍shell常用命令

 

特殊字符

  特殊字符对shell具有特殊含义,不要把它们当作普通字符使用。某些特殊字符用于正则表达式匹配

& ; | * ? ' " ` [ ] ( ) $ < > { } # / \ ! ~

空白符

  尽管RETURN、SPACE、TAB都不是特殊字符,但它们对shell具有特殊含义

  RETURN键通常用于结束命令行并开始命令的执行

  SPACE键和TAB键则用作命令行上的分隔符

转义字符

  要将特殊字符当作普通字符使用,可对它们转义引用

  [注意]斜杠(/)无法被转义,它总是表示路径名中的分隔符

  在特殊字符前加反斜杠(\)即可将将、特殊字符转义。要将连续的两个或多个特殊字符转义,必须在每个字符前面加一个反斜杠(\)

  另一种将特殊字符转义的方法是使用单引号将它们引起来('**'),也可以将特殊字符和普通字符一起用一对单引号引起来

目录相关

显示目录路径

【pwd】 显示当前目录

  [注意]如果使用Windows系统,为了避免遇到各种莫名其妙的问题,请确保目录名(包括父目录)不包含中文

切换目录

【cd】 切换到另一个工作目录,参数direction为要指定为新工作目录的目录路径名

cd [options] [direction]

  如果不带任何参数,或使用波浪号(~),切换到主目录

  使用连字符(-)来切换到前一次的工作目录

  使用双句点(..)来返回到当前目录下的上一级目录

创建目录

【mkdir】创建目录,如果已经存在同名目录,则无法创建成功

mkdir [option] directory-list

删除目录

【rmdir】删除目录,如果不是空目录,则无法删除成功

rmdir directory-list

 

文件相关

显示所有文件

【ls】 类似于dos下的dir命令,用于显示一个或多个文件的相关信息

  默认情况下,ls按照文件名的字母顺序列出文件的信息

ls [options] [file-list]

  options有很多选项,常用选项如下

ls –a 显示所有文件,包括隐藏文件
ls –F 在文件的后面添加表示文件类型的符号。*表示可执行,/表示目录,@表示连结文件
ls –l 列出每个文件更详细的信息
ls -R 递归地列出子目录的内容
ls -t 按最后一次修改时间的顺序显示文件

  file-list包含目录时,ls将显示该目录的内容

ls mygit 显示mygit目录下的文件
ls g* 显示所有以g字母开头的文件

显示文件内容

【cat】 显示文本文件的内容,类似于dos下的type命令

cat [options] [direction]
cat file1 显示file1文件内容
cat file1 file2 依次显示file1,file2的内容
cat file1 file2 > file3 把file1,file2的内容结合起来,再重定向(>)到file3文件中

  ">"是右重定向符,表示将左边命令结果当成右边命令的输入。如果右侧文件是一个已存在文件,其原有内容将会被清空,而变成左侧命令输出内容。如果希望以追加方式写入,请改用">>"重定向符

重写文件

  如果">"左边没有指定文件,如: cat >file1,将会等用户输入,输入完毕后再按[Ctrl]+[d],就会将用户的输入内容写入file1

删除文件

【rm】 删除文件,与dos下的del/erase命令相似

rm [options] file-list

  options有很多选项,常用选项如下

rm –i 系统在删除文件之前会先询问确认,用户回复y或Y之后,文件才会真的被删除
rm –r 递归删除指定目录的内容,包含所有子目录和目录自身
rm –f 和-i参数相反,-f表示强制删除
rm -v 显示被删除的每个文件的文件名

复制文件

【cp】 复制文件

cp [options] source-file destination-file
cp [options] source-file-list destination-directory

  使用cp命令可以生成一个文件的一个副本

  使用cp命令也可以把一个或者多个文件复制到某个目录

  cp -R 递归地复制包含普通文件的目录层次结构

移动文件或重命名

【mv】重命名或移动文件

mv [options] existing-file new-filename
mv [options] existing-file-list direction
mv [options] existing-direction new-direction

  使用mv命令可以重命名文件

  使用mv命令可以将一个文件移动到另一个目录

  使用mv命令可以将一个文件移动到另一个目录,并改名

  使用mv命令也可以移动目录

新建文件

【touch】 新建文件,或改变文件的访问和修改时间

touch [options] file-list

  同名文件不存在时,touch用于新建文件

  同名文件存在时,touch用于修改文件的访问和修改时间

 

文件高级

比较文件

【cmp】 逐字节地比较两个文件,如果两个文件相同,则cmp不显示任何内容;否则,cmp将显示第1个不同处对应的字节数和行号

cmp [options] file1 [file2 [skip1 [skip2]]]

显示不同

【diff】 按行显示两个文本文件的不同。默认情况下,可以按照diff显示的不同来编辑其中的一个文件,使之与另一个文件相同

diff [options] file1 file2
diff [options] file1 directory
diff [options] directory file2
diff [options] directory1 directory2

  file1和file2为diff要比较的普通文本文件的路径名。当file2被directory参数替换时,diff将在directory目录下查找与file1同名的文件;类似地,当file1被directory替换,diff将在directory目录下查找与file2同名的文件;当指定两个目录参数时,diff将比较directory1目录下与directory2目录下具有相同的简单文件名的两个文件

  1c1表示更改a.txt的第1行,使之与b.txt的第一行相同

统计

【wc】 显示行数、单词数和字节数

wc [options] [file-list]

本文转自  zddnd  51CTO博客,原文链接:http://blog.51cto.com/13013666/1943070

相关文章
|
26天前
|
Web App开发 网络协议 Linux
linux命令总结(centos):shell常用命令汇总,平时用不到,用到就懵逼忘了,于是专门写了这篇论文,【便持续更新】
这篇文章是关于Linux命令的总结,涵盖了从基础操作到网络配置等多个方面的命令及其使用方法。
54 1
linux命令总结(centos):shell常用命令汇总,平时用不到,用到就懵逼忘了,于是专门写了这篇论文,【便持续更新】
|
28天前
|
Shell 知识图谱
Shell printf 命令
10月更文挑战第3天
16 1
|
1月前
|
Unix Shell Linux
常见的shell命令
shell常用命令
31 11
|
2月前
|
Shell Linux
Linux shell编程学习笔记82:w命令——一览无余
Linux shell编程学习笔记82:w命令——一览无余
|
2月前
|
Java Shell Windows
java Runtime.exec()执行shell/cmd命令:常见的几种陷阱与一种完善实现
java Runtime.exec()执行shell/cmd命令:常见的几种陷阱与一种完善实现
32 5
|
28天前
|
Shell PHP
Shell echo命令
10月更文挑战第3天
15 0
|
1月前
|
JSON Java Shell
Dockerfile中RUN、CMD、ENTRYPOINT、SHELL命令的区别
理解这些指令的差异和应用场景,有助于构建高效、灵活且易于管理的Docker镜像。在实际应用中,根据需要选择合适的指令,可以有效地控制镜像构建和容器运行的行为。
101 0
|
1月前
|
SQL Shell 数据库
在TDengine容器中创建初始化数据库的Shell命令实例
以上就是在Docker容器环境中部署并初始化TDengine数据库的全过程,希望对你有所帮助。
42 0
|
3月前
|
分布式计算 资源调度 Hadoop
Hadoop入门基础(五):Hadoop 常用 Shell 命令一网打尽,提升你的大数据技能!
Hadoop入门基础(五):Hadoop 常用 Shell 命令一网打尽,提升你的大数据技能!
|
3月前
|
分布式计算 Hadoop Shell
使用Shell命令操作HDFS
【8月更文挑战第5天】使用Shell命令操作HDFS。
87 5