Linux命令行与shell脚本编程大全
文章平均质量分 84
详细介绍重要shell命令用法
yasin墨染锦年
嵌入式软件工程师,欢迎骚扰
展开
-
第17章 常见函数
记住,函数名必须是唯一的,否则也会有问题。如果你重定义了函数,新定义会覆盖原来函数的定义,这一切不会产生任何错误消息。由于退出状态码必须小于256,函数的结果必须生成一个小于256的整数值。当在命令行上定义函数时,你必须记得在每个命令后面加个分号,这样shell就能知道在哪里。默认情况下,函数的退出状态码是函数中最后一条命令返回的退出状态码。要返回较大的整数值或者字符串值的话,就不能用这种返回值的方法,使用函数输出。函数的退出状态码是1,这是因为函数中的最后一条命令没有成功运行。来确定函数的退出状态码。原创 2023-07-25 14:26:26 · 196 阅读 · 0 评论 -
第16章 控制脚本
Ctrl+C组合键会发送SIGINT信号,停止shell中当前运行的进程。Ctrl+Z组合键会生成一个SIGTSTP信号,停止shell中运行的任何进程。停止进程会让程序继续保留在内存中,并能从上次停止的位置继续运行。方括号中的数字是shell分配的作业号( job number)。shell将shell中运行的每个进程称为作业,并为每个作业分配唯一的作业号。它会给第一个作业分配作业号1,第二个作业号2,以此类推。如果你的shell会话中有一个已停止的作业,在退出shell时, bash会提醒你。原创 2023-07-25 14:23:18 · 111 阅读 · 0 评论 -
第15章 呈现数据
默认情况下,大多数bash命令会将输出导向STDOUT文件描述符。数据追加到某个文件用>>符号来完成。who命令生成的输出会被追加到test2文件中已有数据的后面。STDERR文件描述符被设成2。可以选择只重定向错误消息,将该文件描述符值放在重定向符号前。该值必须紧紧地放在重定向符号前。用这种方法, shell会只重定向错误消息,而非普通数据。由于该命令将文件描述符2的输出( STDERR)重定向到了一个输出文件, shell会将生成的所有错误消息直接发送到指定的重定向文件中。如果想。原创 2023-07-25 13:33:13 · 222 阅读 · 0 评论 -
第19章 sed和gawk
s命令会用斜线间指定的第二个文本字符串来替换第一个文本字符串模式。在本例中是big test替换了test。**sed编辑器并不会修改文本文件的数据。**它只会将修改后的数据发送到STDOUT。如果你查看原来的文本文件,它仍然保留着原始数据。要在sed命令行上执行多个命令时,只要用-e选项就可以了。$ sed -e ‘s/brown/green/; s/dog/cat/’ data1....原创 2020-03-19 10:36:49 · 5049 阅读 · 0 评论 -
第14章 处理用户输入
0是程序名,$1是第一个参数,$2是第二个参数,依次类推,直到第九个参数$9。记住,每个参数都是用空格分隔的,所以shell会将空格当成两个值的分隔符。要在参数值中 包含空格,必须要用引号(单引号或双引号均可)。如果脚本需要的命令行参数不止9个,需要稍微修改一下变量名。在第9个变量之后,必须在变量数字周围加上花括号,比如${10}。原创 2023-07-13 09:55:59 · 14146 阅读 · 0 评论 -
第13章 结构化命令 for while until
for while until 命令原创 2020-03-25 15:19:04 · 4122 阅读 · 0 评论 -
第12章 使用结构化命令
结构化命令详解原创 2020-03-24 14:59:47 · 5313 阅读 · 0 评论 -
第11章 构建基本脚本(二)
脚本中的重定向 管道原创 2020-03-24 14:15:47 · 4236 阅读 · 0 评论 -
第11章 构建基本脚本
创建shell脚本 命令替换原创 2020-03-24 14:09:15 · 3960 阅读 · 0 评论 -
第9章 第10章 安装软件程序 &编辑器
安装软件程序yum安装软件包yum install package_name要列出所有已安装包的可用更新,输入如下命令:yum list updates如果想对更新列表中的所有包进行更新,只要输入如下命令:yum update只删除软件包而保留配置文件和数据文件,就用如下命令:yum remove package_name要删除软件和它所有的文件,就用erase选项:yum e...原创 2020-03-21 17:31:27 · 2601 阅读 · 0 评论 -
第8章 管理文件系统
管理文件系统ext文件系统:扩展文件系统,使用虚拟目录来操作硬件设备,在物理设备上按定长的块来存储数据。采用名为索引节点的系统来存放虚拟目录中所存储文件的信息。索引节点系统在每个物理设备中创建一个单独的表(称为索引节点表)来存储这些文件的信息。存储在虚拟目录中的每一个文件在索引节点表中都有一个条目。 Linux通过唯一的数值(称作索引节点号)来引用索引节点表中的每个索引节点,这个值是创建文件时...原创 2020-03-21 17:26:23 · 1670 阅读 · 0 评论 -
第7章 Linux文件的权限
Linux文件的权限用户权限通过创建用户时分诶的用户ID(User ID,通常缩写为UID)来跟踪的。登陆系统时使用的是登录名。Linux系统会为各种各样的功能创建不同的用户账户,而这些账户并不是真的用户。这些账户叫作系统账户,是系统上运行的各种服务进程访问资源用的特殊账户。所有运行在后台的服务都需要用一个系统用户账户登录到Linux系统上。添加新用户用来向Linux系统添加新用户的主要工...原创 2020-03-21 17:21:19 · 4533 阅读 · 0 评论 -
第6章 使用 Linux环境变量
使用 Linux环境变量bash shell用一个叫作环境变量( environment variable)的特性来存储有关shell会话和工作环境的信息。这项特性允许你在内存中存储数据,以便程序或shell中运行的脚本能够轻松访问到它们。在bash shell中,环境变量分为两类:全局变量和局部变量。全局环境变量对于shell会话和所有生成的子shell都是可见的。局部变量则只对创建它们...原创 2020-03-21 17:15:02 · 4656 阅读 · 0 评论 -
第5章 理解shell
理解shell,什么是shell?默认的系统shell设置为bash shell。进程列表,命令之间加入分号;,包含在括号里。要想知道是否生成了子shell,得借助一个使用了环境变量的命令。echo $BASH_SUBSHELL。如果该命令返回0,就表明没有子shell。如果返回1或者其他更大的数字,就表明存在子shell。数字1表明创建了子shell用于执行命令。在命令列表中嵌...原创 2020-03-21 16:59:19 · 4050 阅读 · 0 评论 -
第4章 更多的bash shell命令
PID:程序的进程ID ,TTY:运行终端 TIME CMD:进程已用的CPU时间UID:启动进程的用户。PID:进程的进程ID。PPID:父进程的进程号C:进程生命周期中的CPU利用率。STIME:进程启动时的系统时间TTY:进程启动时的系统时间TIME:运行进程需要的累计CPU时间。CMD:启动的程序名称。使用了-l参数之后多出的那些列。 F:内核分配给进程的系...原创 2020-03-21 16:53:18 · 2064 阅读 · 0 评论 -
第3章 基本的 bash shell 命令(二)
ls命令最基本的形式会显示当前目录下的文件和目录。可用带**-F**参数的ls命令轻松区分文件和目录。-F参数在目录名后加了正斜线( /),以方便用户在输出中分辨它们。类似地,它会在可执行文件(比如上面的my_script文件)的后面加个星号,以便用户找出可在系统上运行的文件。基本的ls命令显示了当前目录下的文件和目录,但并没有将全部都显示出来。 Linux经常采用隐藏文件来保存配置信息。...原创 2020-03-20 15:29:59 · 26869 阅读 · 0 评论 -
第3章 基本的 bash shell 命令(一)
在命令上 输入 init 3 命令 切换到dos界面 (文本模式)输入 init 5命令 切换到图形界面Shift+Ctrl+N 创建一个新的文件夹,在现有的窗口的新标签中启动一个新的shell会话Shift+Ctrl+C 将所选的文本复制到GNOME的剪贴板中Shift+Ctrl+V 将GNOME剪贴板中的文本粘贴到会话中虚拟机:Ctrl+Alt+Enter 全屏和退出全屏Shift...原创 2020-03-20 14:15:20 · 3562 阅读 · 0 评论 -
第2章 通过Linux 控制台终端访问CLI
创建一个新的文件夹,在现有的窗口的新标签中启动一个新的shell会话。打开Find窗口,提供待搜索文本的搜索选项。将所选的文本复制到GNOME的剪贴板中。将GNOME剪贴板中的文本粘贴到会话中。命令 切换到dos界面 (文本模式)发送终端会话重置控制码。关闭当前标签中的会话。命令 切换到图形界面。原创 2023-07-10 15:30:54 · 15441 阅读 · 5 评论