目录
内容来源:
GUN : Coreutils - GNU core utilities
busybox v1.36.1 : 【busybox记录】【shell指令】基于的Busybox的版本和下载方式-CSDN博客
1、输出整个文件
这些命令读写整个文件,可能会转换文件
- cat:连接和写入文件 - 【busybox记录】【shell指令】cat-CSDN博客
- tac:反向连接和写入文件 - 【busybox记录】【shell指令】tac-CSDN博客
- nl:行数和写文件 - 【busybox记录】【shell指令】nl-CSDN博客
- od:写入八进制或其他格式的文件 - 【busybox记录】【shell指令】od-CSDN博客
- base32:将数据转换为可打印数据 -
- base64:将数据转换为可打印数据 - 【busybox记录】【shell指令】base32/base64-CSDN博客
- basenc:将数据转换为可打印数据 - 【busybox记录】【shell指令】basenc-CSDN博客
2、格式化文件内容
这些命令会重新格式化文件的内容
- fmt:重新格式化段落文本 - 【busybox记录】【shell指令】fmt-CSDN博客
- pr:分页或列式文件打印 - 这个指令真的有人在用吗
- fold:根据指定的宽度将输入行折叠起来 - 【busybox记录】【shell指令】fold-CSDN博客
3、文件的部分输出
这些命令输出 输入的片段。
- head:输出文件的第一部分 - 【busybox记录】【shell指令】head-CSDN博客
- tail:输出文件的最后一部分 - 【busybox记录】【shell指令】tail-CSDN博客
- split:将文件分割为多个部分 - 【busybox记录】【shell指令】split-CSDN博客
- csplit:将文件分割为上下文确定的片段 - 【busybox记录】【shell指令】csplit-CSDN博客
4、总结文件
这些命令只生成代表文件全部内容的几个数字。
- wc: 打印换行符、单词和字节计数 【busybox记录】【shell指令】wc-CSDN博客
- sum: 打印校验和和块计数 【busybox记录】【shell指令】sum-CSDN博客
- cksum: 打印并验证文件校验和 【busybox记录】【shell指令】cksum-CSDN博客
- md5sum: 打印或检查MD5摘要 【busybox记录】【shell指令】md5sum-CSDN博客
- b2sum: 打印或检查BLAKE2摘要 【busybox记录】【shell指令】b2sum-CSDN博客
- sha1sum: 打印或检查SHA-1摘要 【busybox记录】【shell指令】sha1sum-CSDN博客
- sha2xxsum: 打印或检查SHA-2摘要 【busybox记录】【shell指令】sha2sum-CSDN博客
5、对排序后的文件进行操作
这些命令处理(或生成)已排序的文件。
- sort: 对文本排序 【busybox记录】【shell指令】sort-CSDN博客
- shuf: 打乱文本 【busybox记录】【shell指令】shuf-CSDN博客
- uniq: 唯一标识文件 【busybox记录】【shell指令】uniq-CSDN博客
- comm: 逐行比较两个排序文件 【busybox记录】【shell指令】comm-CSDN博客
- ptx: 生成置换索引 【busybox记录】【shell指令】ptx-CSDN博客
- tsort: 拓扑排序 【busybox记录】【shell指令】tsort-CSDN博客
6、操作字段
- cut:打印行中所选部分 【busybox记录】【shell指令】cut-CSDN博客
- paste:合并文件行 【busybox记录】【shell指令】paste-CSDN博客
- join:在一个公共字段上连接行 【busybox记录】【shell指令】join-CSDN博客
7、字符操作
这些命令对单个字符进行操作。
- tr: 翻译、压缩和/或删除字符 【busybox记录】【shell指令】tr-CSDN博客
- expand: 将制表符转换为空格 【busybox记录】【shell指令】expand-CSDN博客
- unexpand:将空格转换为制表符 【busybox记录】【shell指令】unexpand-CSDN博客
8、目录列表
本章介绍ls命令及其变体dir和vdir,其中列出了文件的相关信息。
- ls:列出目录内容
- dir:简要列出目录内容
- vdir:详细列出目录内容
- dircolors: ls的颜色设置 【busybox记录】【shell指令】ls-CSDN博客
9、基本文件操作
本章介绍基本的文件操作命令:复制、移动(重命名)和删除(删除)。
- cp: 复制文件和目录 【busybox记录】【shell指令】cp-CSDN博客
- dd: 转换和复制文件 【busybox记录】【shell指令】dd-CSDN博客
- install:复制文件和设置属性 【busybox记录】【shell指令】install-CSDN博客
- mv: 移动(重命名)文件 【busybox记录】【shell指令】mv-CSDN博客
- rm: 删除文件或目录 【busybox记录】【shell指令】rm-CSDN博客
10、特殊文件类型
本章描述用于创建特殊类型文件的命令(以及用于删除目录的rmdir命令,这是一种特殊的文件类型)。
尽管类unix操作系统的特殊文件类型明显少于其他操作系统,但并不是所有文件都只能被视为普通文件的无差别字节流。例如,在创建或删除文件时,系统必须记录这些信息,这是在目录(一种特殊类型的文件)中进行的。虽然你可以像普通文件一样读取目录,但如果你好奇的话,为了让系统完成它的工作,它必须对文件的字节强加一个结构,一个特定的顺序。因此,它是一种“特殊”类型的文件。
除了目录之外,其他特殊的文件类型还包括命名管道(fifo)、符号链接、套接字和所谓的特殊文件。
- link:通过link系统调用建立硬链接 【busybox记录】【shell指令】link-CSDN博客
- ln:建立文件间的链接 【busybox记录】【shell指令】ln-CSDN博客
- mkdir:创建目录 【busybox记录】【shell指令】mkdir-CSDN博客
- mkfifo:创建fifo(命名管道) 【busybox记录】【shell指令】mkfifo-CSDN博客
- mknod:创建块或字符特殊文件 【busybox记录】【shell指令】mknod-CSDN博客
- readlink:打印符号链接或规范文件名的值 【busybox记录】【shell指令】readlink-CSDN博客
- rmdir:删除空目录 【busybox记录】【shell指令】rmdir-CSDN博客
- unlink:通过unlink系统调用删除文件 【busybox记录】【shell指令】unlink-CSDN博客
11、修改文件属性
文件不仅仅是它的内容、名称和文件类型(参见第12章[特殊文件类型])。一个文件还有一个所有者(一个用户ID)、一个组(一个组ID)、权限(所有者可以对文件做什么、组内的人可以做什么、其他人可以做什么)、各种时间戳和其他信息。总的来说,我们称之为文件属性。
这些命令更改文件属性。
- chown:更改文件所有者和组 【busybox记录】【shell指令】chown-CSDN博客
- chgrp:修改组所有权 【busybox记录】【shell指令】chgrp-CSDN博客
- chmod:修改访问权限 【busybox记录】【shell指令】chmod-CSDN博客
- touch:修改文件时间戳 【busybox记录】【shell指令】touch-CSDN博客
12、文件空间使用情况
没有一个文件系统可以容纳无限的数据。这些命令报告有多少存储正在使用或可用,报告其他文件和文件状态信息,并将缓冲区写入文件系统。
- df:报表文件系统空间使用情况 【busybox记录】【shell指令】df-CSDN博客
- du:估计文件空间使用情况 【busybox记录】【shell指令】du-CSDN博客
- stat:报告文件或文件系统状态 【busybox记录】【shell指令】stat-CSDN博客
- sync:将缓存的写数据同步到持久存储 【busybox记录】【shell指令】sync-CSDN博客
- truncate:缩小或扩展文件的大小 【busybox记录】【shell指令】truncate-CSDN博客
13、打印文本
介绍显示文本字符串的命令。
- echo: 打印一行文本 【busybox记录】【shell指令】echo-CSDN博客
- printf: 格式化和打印数据 【busybox记录】【shell指令】printf-CSDN博客
- yes: 打印字符串直到被中断 【busybox记录】【shell指令】yes-CSDN博客
14、条件
本节描述的命令主要用于其退出状态,而不是其输出。因此,它们通常用作shell if语句的条件,或者作为管道中的最后一个命令。
- false: 什么都不做,不成功 【busybox记录】【shell指令】false-CSDN博客
- true: 什么都不做,成功 【busybox记录】【shell指令】true-CSDN博客
- test: 检查文件类型,比较值 【busybox记录】【shell指令】test-CSDN博客
- expr: 计算表达式 【busybox记录】【shell指令】expr-CSDN博客
15、重定向
Unix shell通常提供几种形式的重定向 - 改变命令的输入源或输出目的地的方法。但是一个有用的重定向是由一个单独的命令执行的,而不是由shell执行的;这里有描述。
- tee:将输出重定向到多个文件或进程 【busybox记录】【shell指令】tee-CSDN博客
16、文件名操作
本节介绍操作文件名的命令。
- basename: 从文件名中剥离目录和后缀 【busybox记录】【shell指令】basename-CSDN博客
- dirname: 最后一个条带文件名组件 【busybox记录】【shell指令】dirname-CSDN博客
- pathchk: 检查文件名的有效性和可移植性 【busybox记录】【shell指令】pathchk-CSDN博客
- mktemp: 创建临时文件或目录 【busybox记录】【shell指令】mktemp-CSDN博客
- realpath: 打印解析后的文件名。 【busybox记录】【shell指令】realpath-CSDN博客
17、工作环境
本节描述显示或更改您正在工作的上下文的命令:
当前目录、终端设置等等。另请参阅下一节中与用户相关的命令。
- pwd:打印工作目录 【busybox记录】【shell指令】pwd-CSDN博客
- stty:打印或更改终端特性 【busybox记录】【shell指令】stty-CSDN博客
- printenv:打印全部或部分环境变量 【busybox记录】【shell指令】printenv-CSDN博客
- tty:在标准输入上打印终端文件名 【busybox记录】【shell指令】tty-CSDN博客
18、用户信息
本节介绍打印用户相关信息的命令:登录、组等。
- id: 打印用户标识 【busybox记录】【shell指令】id-CSDN博客
- logname:打印当前登录名 【busybox记录】【shell指令】logname-CSDN博客
- whoami: 打印有效的用户名 【busybox记录】【shell指令】whoami-CSDN博客
- groups: 打印用户所在的组名 【busybox记录】【shell指令】groups-CSDN博客
- users: 打印当前登录用户的登录名 【busybox记录】【shell指令】users-CSDN博客
- who: 打印当前登录的人 【busybox记录】【shell指令】who-CSDN博客
- pinky: 打印用户信息 【busybox记录】【shell指令】pinky-CSDN博客
19、系统背景
本节介绍打印或更改系统级信息的命令。
- date:打印或设置系统日期和时间 【busybox记录】【shell指令】date-CSDN博客
- arch:打印机硬件名称 【busybox记录】【shell指令】arch-CSDN博客
- nproc:打印可用处理器的数量 【busybox记录】【shell指令】nproc-CSDN博客
- uname:打印系统信息 【busybox记录】【shell指令】uname-CSDN博客
- hostname:打印或设置系统名称 【busybox记录】【shell指令】hostname-CSDN博客
- hostid:打印数字主机标识符 【busybox记录】【shell指令】hostid-CSDN博客
- uptime:打印系统的正常运行时间和负载 【busybox记录】【shell指令】uptime-CSDN博客
20、SELinux上下文
本节介绍与SELinux上下文相关的操作命令。
- chcon:更改文件的SELinux上下文 【busybox记录】【shell指令】chcon-CSDN博客
- runcon:在指定的SELinux上下文中运行命令 【busybox记录】【shell指令】runcon-CSDN博客
21、修改命令调用
本节描述在与当前上下文不同的上下文中运行其他命令的命令:在修改的环境中,作为不同的用户,等等。
- chroot: 在不同的根目录下执行命令 【busybox记录】【shell指令】chroot-CSDN博客
- env: 在修改后的环境中执行命令 【busybox记录】【shell指令】env-CSDN博客
- nice: 运行修改了nice的命令 【busybox记录】【shell指令】nice-CSDN博客
- nohup: 运行一个对挂起免疫的命令 【busybox记录】【shell指令】nohup-CSDN博客
- stdbuf: 运行修改I/O流缓冲的命令
- timeout:执行有时间限制的命令
22、过程控制
- kill:发送一个信号给进程
23、延时
- sleep:延迟指定的时间
24、数字操作
这些程序执行与数值相关的操作。
- factor: 打印质数因子
- numfmt: 重新格式化数字
- seq: 打印数字序列