2020.02.28 Linux 命令
Cat
语法格式
cat [-AbeEnstTuv] [--help] [--version] fileName
参数说明:
-n 或 --number:由 1 开始对所有输出的行数编号。
-b 或 --number-nonblank:和 -n 相似,只不过对于空白行不编号。
-s 或 --squeeze-blank:当遇到有连续两行以上的空白行,就代换为一行的空白行。
-v 或 --show-nonprinting:使用 ^ 和 M- 符号,除了 LFD 和 TAB 之外。
-E 或 --show-ends : 在每行结束处显示 $。
-T 或 --show-tabs: 将 TAB 字符显示为 ^I。
-A, --show-all:等价于 -vET。
-e:等价于"-vE"选项;
-t:等价于"-vT"选项;
实例:
把 textfile1 的文档内容加上行号后输入 textfile2 这个文档里:
cat -n textfile1 > textfile2
把 textfile1 和 textfile2 的文档内容加上行号(空白行不加)之后将内容附加到 textfile3 文档里:
cat -b textfile1 textfile2 >> textfile3
清空 /etc/test.txt 文档内容:
cat /dev/null > /etc/test.txt
cat 也可以用来制作镜像文件。例如要制作软盘的镜像文件,将软盘放好后输入:
cat /dev/fd0 > OUTFILE
相反的,如果想把 image file 写到软盘,输入:
cat IMG_FILE > /dev/fd0
chgrp命令 – 更改文件用户组
常用参数:
-c | 效果类似”-v”参数,但仅回报更改的部分 |
-f | 不显示错误信息 |
-h | 对符号连接的文件作修改,而不更动其他任何相关文件 |
-R | 递归处理,将指定目录下的所有文件及子目录一并处理 |
-v | 显示指令执行过程 |
--reference | 把指定文件或目录的所属群组全部设成和参考文件或目录的所属群组相同 |
chmod命令 – 改变文件或目录权限
常用参数:
-c | 若该文件权限确实已经更改,才显示其更改动作 |
-f | 若该文件权限无法被更改也不显示错误讯息 |
-v | 显示权限变更的详细资料 |
-R | 对目前目录下的所有文件与子目录进行相同的权限变更(即以递回的方式逐个变更) |
chown命令 – 改变文件或目录用户和用户组
-R | 对目前目录下的所有文件与子目录进行相同的拥有者变更 |
将当前目录下所有文件的拥有者都改为 linuxcool,用户组改为 linuxcoolgroup:
[root@linuxcool ~]# chown -R linuxcool:linuxcoolgroup *
diff命令 – 比较文件的差异
常用参数:
-a | diff预设只会逐行比较文本文件 |
-b | 不检查空格字符的不同 |
file命令 – 识别文件类型
-i | 显示MIME类别 |
cut命令 – 连接文件并打印到标准输出设备上
常用参数:
-b | 以字节为单位进行分割 ,仅显示行中指定直接范围的内容 |
-c | 以字符为单位进行分割 , 仅显示行中指定范围的字符 |
-f | 显示指定字段的内容 , 与-d一起使用 |
使用 -f 选项提取指定字段(这里的 f 参数可以简单记忆为 --fields的缩写):
[root@linuxcool ~]# cut -f 2 student.txt
Name
tom
jack
alex
less命令 – 分页显示工具
常用参数:
-b | 置缓冲区的大小 |
-e | 当文件显示结束后,自动离开 |
-f | 强迫打开特殊文件,例如外围设备代号、目录和二进制文件 |
-g | 只标志最后搜索的关键词 |
-i | 忽略搜索时的大小写 |
-m | 显示类似more命令的百分比 |
-N | 显示每行的行号 |
-o | 将less 输出的内容在指定文件中保存起来 |
-Q | 不使用警告音 |
-s | 显示连续空行为一行 |
-S | 在单行显示较长的内容,而不换行显示 |
-x | 将TAB字符显示为指定个数的空格字符 |
命令内部操作:
- b 向后翻一页
- d 向后翻半页
- h 显示帮助界面
- Q 退出less 命令
- u 向前滚动半页
- y 向前滚动一行
- 空格键 滚动一页
- 回车键 滚动一行
mdir命令 – 显示MS-DOS目录
-/ | 显示目录下所有子目录与文件 |
-a | 显示隐藏文件 |
-f | 不显示磁盘所剩余的可用空间 |
-w | 仅显示目录或文件名称,并以横排方式呈现,以便一次能显示较多的目录或文件 |
-X | 仅显示目录下所有子目录与文件的完整路径,不显示其他信息 |
more命令 – 显示文本文件内容
-num | 指定每屏显示的行数 |
-l | more在通常情况下把 ^L 当作特殊字符, 遇到这个字符就会暂停,-l选项可以阻止这种特性 |
-f | 计算实际的行数,而非自动换行的行数 |
-p | 先清除屏幕再显示文本文件的剩余内容 |
-c | 与-p相似,不滚屏,先显示内容再清除旧内容 |
-s | 多个空行压缩成一行显示 |
-u | 禁止下划线 |
+/pattern | 在每个文档显示前搜寻该字(pattern),然后从该字串之后开始显示 |
+num | 从第 num 行开始显示 |
rm命令 – 移除文件或目录
-f | 忽略不存在的文件,不会出现警告信息 |
-i | 删除前会询问用户是否操作 |
-r/R | 递归删除 |
-v | 显示指令的详细执行过程 |
touch命令 – 创建文件
-a | 改变档案的读取时间记录 |
-m | 改变档案的修改时间记录 |
-r | 使用参考档的时间记录,与 --file 的效果一样 |
-c | 不创建新文件 |
-d | 设定时间与日期,可以使用各种不同的格式 |
-t | 设定档案的时间记录,格式与 date 命令相同 |
--no-create | 不创建新文件 |
--help | 显示帮助信息 |
--version | 列出版本讯息 |
which命令 – 查找文件
-n | 指定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名 |
-p | 与-n参数相同,但此处的<文件名长度>包括了文件的路径 |
-w | 指定输出时栏位的宽度 |
-V | 显示版本信息 |
cp命令 – 复制文件或目录
-f | 若目标文件已存在,则会直接覆盖原文件 |
-i | 若目标文件已存在,则会询问是否覆盖 |
-p | 保留源文件或目录的所有属性 |
-r | 递归复制文件和目录 |
-d | 当复制符号连接时,把目标文件或目录也建立为符号连接,并指向与源文件或目录连接的原始文件或目录 |
-l | 对源文件建立硬连接,而非复制文件 |
-s | 对源文件建立符号连接,而非复制文件 |
-b | 覆盖已存在的文件目标前将目标文件备份 |
-v | 详细显示cp命令执行的操作过程 |
-a | 等价于“dpr”选项 |
whereis命令 – 显示命令及相关文件的路径
-b | 查找二进制程序或命令 |
-B | 从指定目录下 查找二进制程序或命令 |
-m | 查找man手册文件 |
-M | 从指定目录下 查找man手册文件 |
-s | 只查找源代码文件 |
-S | 从指定目录下 查找源代码文件 |
awk命令 – 文本和数据进行处理的编程语言
-F | 指定输入时用到的字段分隔符 |
-v | 自定义变量 |
-f | 从脚本中读取awk命令 |
-m | 对val值设置内在限制 |
read – 读取单行数据
-a | 后跟一个变量,该变量会被认为是个数组,然后给其赋值,默认是以空格为分割符 |
-- d | 后面跟一个标志符,其实只有其后的第一个字符有用,作为结束的标志 |
-- p | 后面跟提示信息,即在输入前打印提示信息 |
-- e | 在输入的时候可以使用命令补全功能 |
-- n | 后跟一个数字,定义输入文本的长度 |
-- r | 屏蔽\,如果没有该选项,则\作为一个转义字符,有的话 \就是个正常的字符了 |
-- s | 安静模式,在输入字符时不再屏幕上显示 |
-- t | 后面跟秒数,定义输入字符的等待时间 |
-- u | 后面跟fd,从文件描述符中读入,该文件描述符可以是exec新开启的 |
read – 读取单行数据
Linux read命令用于从标准输入读取数值。read 内部命令被用来从标准输入读取单行数据。这个命令可以用来读取键盘输入,当使用重定向的时候,可以读取文件中的一行数据。
语法格式:read [参数]
常用参数:
-a | 后跟一个变量,该变量会被认为是个数组,然后给其赋值,默认是以空格为分割符 |
-- d | 后面跟一个标志符,其实只有其后的第一个字符有用,作为结束的标志 |
-- p | 后面跟提示信息,即在输入前打印提示信息 |
-- e | 在输入的时候可以使用命令补全功能 |
-- n | 后跟一个数字,定义输入文本的长度 |
-- r | 屏蔽\,如果没有该选项,则\作为一个转义字符,有的话 \就是个正常的字符了 |
-- s | 安静模式,在输入字符时不再屏幕上显示 |
-- t | 后面跟秒数,定义输入字符的等待时间 |
-- u | 后面跟fd,从文件描述符中读入,该文件描述符可以是exec新开启的 |
参考实例
简单读取:
#!/bin/bash
echo "输入网站名: "
read file
echo "你输入的网站名是 $file"
exit 0
wc命令 – 统计文件的字节数、字数、行数
-w | 统计字数,或--words:只显示字数。一个字被定义为由空白、跳格或换行字符分隔的字符串 |
-c | 统计字节数,或--bytes或--chars:只显示Bytes数 |
-l | 统计行数,或--lines:只显示列数 |
-m | 统计字符数 |
-L | 打印最长行的长度 |
--help | 显示帮助信息 |
--version | 显示版本信息 |
vi命令 – 文本编辑器
cd命令 – 切换目录
-P | 如果切换的目标目录是一个符号链接,则直接切换到符号链接指向的目标目录 |
-L | 如果切换的目标目录是一个符号链接,则直接切换到符号链接名所在的目录 |
-- | 仅使用”-“选项时,当前目录将被切换到环境变量”OLDPWD”对应值的目录 |
~ | 切换至当前用户目录 |
.. | 切换至当前目录位置的上一级目录 |
2020.02.28 Linux 命令的更多相关文章
- [z]Java开发必会的Linux命令
1.查找文件 find / -name filename.txt 根据名称查找/目录下的filename.txt文件. find . -name "*.xml" 递归查找所有的xm ...
- Java开发常用Linux命令
1.查找文件 find / -name filename.txt根据名称查找/目录下的filename.txt文件. find . -name "*.xml"递归查找所有的xml文 ...
- Java 开发必会的 Linux 命令
作为一个Java开发人员,有些常用的Linux命令必须掌握.即时平时开发过程中不使用Linux(Unix)或者mac系统,也需要熟练掌握Linux命令.因为很多服务器上都是Linux系统.所以,要和服 ...
- Linux - 常用 Linux 命令的基本使用
常用 Linux 命令的基本使用 目标 理解学习 Linux 终端命令的原因 常用 Linux 命令体验 01. 学习 Linux 终端命令的原因 Linux 刚面世时并没有图形界面,所有的操作全靠命 ...
- Java开发人员必会的基本Linux命令(转)
原文链接:http://www.cnblogs.com/zhuawang/p/5212809.html http://explainshell.com/ 本文并不会对所有命令进行详细讲解,只给出常见用 ...
- 06_常用 Linux 命令的基本使用
常用 Linux 命令的基本使用 目标 理解学习 Linux 终端命令的原因 常用 Linux 命令体验 01. 学习 Linux 终端命令的原因 Linux 刚面世时并没有图形界面,所有的操作全靠命 ...
- java程序猿常用Linux命令
1.查找文件 find / -name filename.txt 根据名称查找/目录下的filename.txt文件. find . -name "*.xml" 递归查找所有的xm ...
- Linux命令学习笔记目录
Linux命令学习笔记目录 最近正在使用,linux,顺便将用到的命令整理了一下. 一. 文件目录操作命令: 0.linux命令学习笔记(0):man 命令 1.linux命令学习笔记(1):ls命令 ...
- 01_常用 Linux 命令的基本使用
01. 学习 Linux 终端命令的原因 Linux 刚面世时并没有图形界面,所有的操作全靠命令完成,如 磁盘操作.文件存取.目录操作.进程管理.文件权限 设定等 在职场中,大量的 服务器维护工作 都 ...
随机推荐
- 网页链接在QQ内因多人投诉被拦截的解决方案
背景 相信大家经常会遇到一个头疼的问题就是,明明自己的网页没有违规内容(比如线下活动的推广),但链接在QQ内转发分享会被QQ管家拦截,导致用户无法访问. 那么当大家遇到这个问题的时候应该怎么办呢?不用 ...
- Go语言标准库flag基本使用
文章引用自 Go语言标准库flag基本使用 os.Args 如果你只是简单的想要获取命令行参数,可以像下面的代码示例一样使用os.Args来获取命令行参数. package main import ...
- AD 快捷键设置
TAA 设置自动标记原件位号 AR 设置元件向右对齐 AL 设置元件向左对齐 MS 移动所选择 CO 错误报告设置 CTRL + w 设置电气线 PN 添加net label TG 打开封装管理器 P ...
- P&R 6
Floorplan: 要做好floorplan需要掌握哪些知识跟技能? 通常,遇到floorplan问题,大致的debug步骤跟方法有哪些? 如何衡量floorplan的QA? Floorplan基本 ...
- Spring JdbcTemplate类常用的方法
execute(String sql) 可执行任何sql语句,但返回值是void,所以一般用于数据库的新建.修改.删除和数据表记录的增删改. int update(String sql) int ...
- Mac上通过docker配置PHP开发环境
这篇文章介绍的内容是关于Mac上通过docker配置PHP开发环境,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下 更多PHP相关知识请关注我的专栏PHPzhuanlan.zhihu. ...
- 松软科技web教程:JavaScript HTML DOM 元素
查找 HTML 元素 通常,通过 JavaScript,您需要操作 HTML 元素. 为了达成此目的,您需要首先找到这些元素.有好几种完成此任务的方法: 通过 id 查找 HTML 元素 通过标签名查 ...
- Springmvc-crud-07(springmvc标签错误)
错误:springmvc标签错误 原因:1.在springmvc中的form标签中没有绑定modelAttribute属性 2.必须要获取到参数(可以创建map对象,进行存储参数,再用modelAtt ...
- spring简要回顾
spring内容 spring容器: @Repository @Service @Controller @Component <bean id="类名首字母小写">默认 ...
- js的JSON新方法和历史记录管理
今天看妙味的视频,一下是一些简单的笔记: 1.JSON的一些新方法: JSON.stringify(); JSON.parse(); 第一个是把js脚本转换成JSON的字符串形式. 而第二个则是吧这种 ...