Linux中的Shell编程
Shell(即壳)是计算机操作系统中的一个特性,是用户与操作系统之间的接口。在Linux中,有多种不同的Shell可以选择,其中最常见的是Bash(Bourne Again SHell)。
Shell编程是指使用Shell语言编写脚本来完成特定任务的程序设计过程。Shell脚本是一系列按照顺序执行的命令集合,可以用来自动化完成日常的操作。
Shell编程在Lin
原创
2024-02-04 10:08:34
26阅读
1)判断表达式
if test (表达式为真)
if test !表达式为假
test 表达式1 –a 表达式2 两个表达式都为真
test 表达式1 –o 表达式2 &n
转载
精选
2013-05-04 16:40:32
742阅读
前言:用户通过 signal 和 sigaction 向内核注册自己的信号处理函数,当内核达到某个条件或者用户自行触发某个信号时,进程会
原创
2022-09-23 13:43:13
352阅读
1.问题:hash_map定义那行: error: ISO C++ forbids declaration of `hash_m:#i...
原创
2023-04-18 05:54:37
71阅读
Redis是Linux系统编程中一个基于内存的高性能键值存储系统,常作为守护进程(redis-server)运行。它支持字符串、列表、哈希、集合和有序集合等多种数据结构,主要用作缓存、消息队列和会话存储等场景。通过RDB快照和AOF日志实现数据持久化,采用I/O多路复用技术处理高并发。Redis通过全局哈希表索引数据,并使用redisObject结构封装多种底层数据结构实现高效存取,是构建高性能分布式系统的核心组件。
Linux网络编程中的地址问题 在网络系统内核中 IP地址是32位,由4组十进制数组成,每组数值的范围为0~255,而平时我们使用的IP地址是16位字符串形式的IP地址,例如:“192.168.1.11”。在程序设计中经常要用到字符串表达方式的IP地址和二进制的IP地址之间的转换。  
原创
2011-09-18 21:23:00
662阅读
一、shell定义与执行 shell既是一种应用程序,又是一种程序设计语言 shell是用户和Linux内核之间的接口程序 》作为应用程序: 交互式地解释、执行用户输入的命令,将用 户的操作翻译成机器可以识别的语言,完成相应 功能 》作为程序设计语言: 它定义了各种变量和参数,并提供了许多在 高级语 ...
转载
2021-08-28 23:08:00
239阅读
2评论
一、shell定义与执行 shell既是一种应用程序,又是一种程序设计语言 shell是用户和Linux内核之间的接口程序 》作为应用程序: 交互式地解释、执行用户输入的命令,将用 户的操作翻译成机器可以识别的语言,完成相应 功能 》作为程序设计语言: 它定义了各种变量和参数,并提供了许多在 高级语 ...
转载
2021-08-28 23:08:00
189阅读
2评论
开始使用Linux编程时,一个很讨厌的问题就是如何写Makefile文件,由于在Linux下不像在Windows下那么熟悉,有那么多好的软件(也许是对Linux孤陋寡闻了)。虽然象Kylix和Anjuta这样的集成编译环境,但是Kylix太大太慢,用它编写console程序不亚于高射炮打蚊子——大材小用,而Anjuta又太不稳定,况且字体有那么难看。不说了,还是言归正传,看看Makefile该如何
原创
2012-03-10 05:23:11
414阅读
1 for循环 1 for语句的结构 for variable in values; do statement done 2 for循环通常是用来处理一组值,这组值可以是任意的字符串的集合 3 for循环举例 2 while循环 1 while循环的结构 while condition; do statement done 2 在shell脚本里面
转载
2013-09-25 19:57:00
253阅读
2评论
二、环境变量 1.使用main的参数 int main(int args,char *argv[],char **arge) { } 命令行参数argv与环境行arge都是字符串数组. 约定:最后一个字符串是NULL/0 2.在C的标准库提供:外部变量 extern char **environ;以下3个例子都是用于演示如何获取环境变量:
原创
2014-02-09 18:31:26
42阅读
shell脚本编程之函数==============================================================================概述: 本篇将主要讲解shell脚本编程中函数的用法,具体内容如下:===============================================================
原创
2016-08-22 18:16:11
8981阅读
一、井号 # 1、在脚本文件中对一行进行注释。 2、在引号和\符号后不是注释,只是#号本身: echo "12 # hehe" echo '12 # hehe' echo 12 \# hehe 3、参数替代 echo $(PATH#*:) www.2cto.com 4、进制数转换 echo $((16#a));将
转载
2022-06-24 10:41:35
5233阅读
上篇我们看了netfilter的实现机制,这篇来实现下netfilter模块实操一把。为了注册一个钩子,需要填充nf_hook_ops结构体,包括优先级,钩子地点和钩子函数。然后调用nf_register_hook()函数。1. 数据结构 struct nf_hook_ops { /* User fills in from here down. */ nf_hoo...
原创
2021-08-16 22:48:02
492阅读
守护进程,也就是通常说的Daemon进程,是Linux中的后台服务进程。它是一个生存期较长的进程,通常独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事件。守护进程常常在系统引导装入时启动,在系统关闭时终止。Linux系统有很多守护进程,大多数服务都是通过守护进程实现的,同时,守护进程还能完成许多系统任务,例如,作业规划进程crond、打印进程lqd等(这里的结尾字母d就是Daemon的意思)。 一般情况下守护进程可以通过以下几种方式产生:1,在系统启动的时候由启动脚本启动,这些启动脚本通常放在/etc/rc.d目录下2,利用inetd超级系统服务器启动,如telnet等3,由cro
原创
2021-08-23 10:57:45
2363阅读
隐患 1.忽略返回状态第一个隐患很明显,但它是开发新手最容易犯的一个错误。如果您忽略函数的返回状态,当它们失败或部分成功的时候,您也许会迷失。反过来,这可能传播错误,使定位问题的源头变得困难。捕获并检查每一个返回状态,而不是忽略它们。考虑清单 1 显示的例子,一个套接字 send 函数。清单 1. ...
原创
2021-08-04 10:21:16
84阅读
转载
2017-03-04 17:31:00
37阅读
2评论
转载
2021-08-23 15:49:02
34阅读
在 4.2 BSD UNIX® 操作系统中首次引入,Sockets API 现在是任何操作系统的标准特性。事实上,很难找到一种不支持 Sockets API 的现代语言。该 API 相当简单,但新的开发人员仍然会遇到一些常见的隐患。本文识别那些隐患并向您显示如何避开它们。隐患 1.忽略返回状态第一个隐患很明显,但它是开发新手最容易犯的一个错误。如果您忽略函数的返回状态,当它们失败或部分成功的时候,
转载
2012-11-08 17:19:00
28阅读
2评论
全部学习汇总: https://github.com/GreyZhang/little_bits_of_linux linux中进程间通信,简称IPC。主要存在以下几种方式:管道、FIFO(有名管道); 消息队列; 共享内存; 信号量; 信号; 套接字(主要是用于不同机器之间的通信);这次,先看看比较常见的信号方式。linux支持的信号可以通过kill命令来查看。 查看一下linux支持的信号种类如下: 一...
原创
2021-06-22 16:04:34
298阅读