首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Linux shell 程序设计4——shell变量

3、shell变量赋值和c语言略有不同,shell赋值要求等号的两边不能出现空格,而在linux C 中,一般为了增强代码的可读性,等号的两边都加一个空格。.../bin/bash #This is an example to show how to use variables version="2.6.24" name="linux-headers-2.6.24..." echo -e "name:$name\nversion:$version" 执行结果: name:linux-headers-2.6.24 version:2.6.24 5、shell变量的作用范围是本...echo $os_name 命令,我们会得到: linux 6、有一种能继承给子shell的变量,称之为环境变量。...而如果在终端中使用命令: export a=linux 然后执行上述脚本,我们的到结果: linux 7、shell内置变量:bash设置了许多内置变量,在进行shell程序设计的时候可能需要用到。

1.8K60
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    WINDOWS下使用虚拟机安装ubuntu及其上网设置的安装说明

    LINUX是个好东西,可是如果是新手.而且是想多系统共存的话,安装就会有点难。建议初装LINUX的朋友试试用虚拟机VMware workstation安装。...,反之亦然.事实上,两个操作系统之间并没有太多的依赖关系,你也可以在linux上再装一个linux,或者在win98下装一个winXP,随你自己喜欢.关键的好处在于,你安装这个新的操作系统并不需要重新划分硬盘空间.../Unix(适合想体会一下linux又害怕破坏现有系统的linux新手) 在linux下安装win32(可解燃眉之急) 从一个系统中引导出另一个系统(二者并存) %%%%%...I.点击finish,返回VMWARE主界面,LINUX虚拟机就建好了。...update-initramfs: Generating /boot/initrd.img-2.6.24-16-generic  The bld-2.6.24-16-i386generic-Ubuntu8.04

    2.5K110

    K8S Pod 内抓包快速定位网络问题

    原理 namespace 是Linux中一些进程属性的作用域,使用命名空间,可以隔离不同的进程。...Linux在不断的添加命名空间,目前有: mount:挂载命名空间,使进程有一个独立的挂载文件系统,始于Linux 2.4.19 ipc:ipc命名空间,使进程有一个独立的ipc,包括消息队列,共享内存和信号量...,始于Linux 2.6.19 uts:uts命名空间,使进程有一个独立的hostname和domainname,始于Linux 2.6.19 net:network命名空间,使进程有一个独立的网络栈,...始于Linux 2.6.24 pid:pid命名空间,使进程有一个独立的pid空间,始于Linux 2.6.24 user:user命名空间,是进程有一个独立的user空间,始于Linux 2.6.23...,结束于Linux 3.8 cgroup:cgroup命名空间,使进程有一个独立的cgroup控制组,始于Linux 4.6 Linux的每个进程都具有命名空间,可以在 /proc/PID/ns 目录中看到命名空间的文件描述符

    5.7K1916

    你有普通用户使用特权端口 (1024 以下) 的需求吗,或许这篇文章能帮你彻底解决!

    众所周知,在 Linux 系统下,只允许 Root 用户运行的程序才可以使用特权端口 ( 1024 以下的端口 )。如果在普通用户下使用特权端口将会报错。...在一些特定的环境下,我们可能考虑到程序运行在 Root 帐户下,可能会给 Linux 系统带来安全风险。希望能让普通用户启动的程序运行在特权端口上,比如:Web 服务器。...通过设置 CAP_NET_BIND_SERVICE 实现 Linux 内核从 2.6.24 版本开始就有了能力的概念,这使得普通用户也能够做只有超级用户才能完成的工作。...$ setcap -r /path/to/application 这个方法并不是所有 Linux 系统通用,Linux 内核在 2.6.24 之前的并没有提供此项能力,因此你需要检查要使用此方法所在系统是否支持...stackoverflow.com/questions/413807/is-there-a-way-for-non-root-processes-to-bind-to-privileged-ports-on-linux

    8.4K11

    docker拾遗-之再入坑

    一种虚拟化的方案 操作系统级别的虚拟化 只能运行在相同或相似内核的操作系统 依赖于linux内核特性:Namespace和Cgroups(Control Group) linux容器 VS 虚拟机 使用的容量更小...,部署服务 创建隔离的运行环境 搭建测试环境 构建多用户的平台即服务(PaaS)基础设施 提供软件即服务(SaaS)应用程序 高性能、超大规模的宿主机部署 Docker容器相关技术 docker依赖的linux...管理跨进程通信的访问 MNT (Mount) 管理挂载点 UTS (Unix TimeSharing System) 隔离内核和版本标识 Control groups 控制组 用来分配资源 来源于google Linux...Kernel 2.6.24 @ 2007 资源限制 优先级设定 资源计量 资源控制 Docker容器的能力 文件系统隔离: 每个容器的都有自己的root文件系统 进程隔离: 每个容器都运行在自己的进程环境中

    51460

    话你知容器虚拟技术

    容器所用到的核心技术 NameSpace:名称空间(资源隔离机制) 在内核级别:完成环境隔离的方法(类似于chroot机制) PID NameSapce Linux 2.6.24 PID隔离,隔离PID...端口等网络资源隔离,用于网络虚拟容器隔离 User NameSpace Linux 3.8 用户和用户组资源隔离,完成用户隔离,每一个用户的名称空间当中都有可能可以存在所谓同样用户名的用户 linux...3.8(所以docker是依赖于linux 3.8以后的版本,或者要求更高,是3.10以后的版本) IPC NameSpace Linux 2.6.19 进程间通信资源隔离(信号量、消息队列和共享内存的隔离...) UTS NameSpace Linux 2.6.1 主机名和域名隔离 Mount NameSpace linux 2.4.19 挂载点隔离(真正是实现文件系统给的隔离) 实现已挂载文件系统隔离的...Control Group) 控制组 一个用户空间可以将整个服务器的CPU耗尽,那么其他用户空间将无法运行,所以仅有名称空间是无法满足,所以有另一个技术,叫CGroup(linux 2.6.24) CGroup

    79640

    如何在linux系统上移植驱动?

    在嵌入式linux上移植LCD(这里指彩色点阵式LCD)的驱动,通常说来,并不是很困难的事。最简单的方法,就是找到linux中,现有的LCD驱动的参数设置的代码,直接修改参数即可。...1075083208 如何在linux系统上移植驱动以下,就把LCD的参数设置的方法说明一下。 首先,参数设置设置的是什么?其实就是LCD屏的工作频率,垂直扫描频率,撗向扫描时间等等参数。...接下来,如何设置,在linux中,这些参数将会填写到LCD驱动相关的结构体中去。(不同体系的嵌入系统中,这个结构体的名称和所在文件不尽相同) 最后,就是手册中的参数与LCD结构体中的参数的对应关系。...(系统是at9261,嵌入式linux版本是2.6.24) 和刷新率有关的几个参数         .left_margin    = 40,      .right_margin    = 40,

    3.7K10

    linux进程调度算法-Completely Fair Scheduler

    像大多数现代操作系统一样,Linux 是一个多任务操作系统,因此它有一个调度程序。 Linux 调度程序随着时间的推移而发展。 1....O(1) 调度器 随着内核 2.6 的发布,Linux 调度程序被彻底改革。这个新的调度器被称为 O(1) 调度器——O(…) 被称为“大 O 表示法”。...内核 2.6.24 CFS 已在 2.6.24 中进一步修改。虽然公平的基本概念仍然存在,但一些实现细节已经发生了变化。现在,任务不再追逐全局公平时钟(rq->fair_clock),而是相互追逐。...在内核 2.6.24 中,CFS 的另一个主要补充是组调度。普通 CFS 试图对系统中运行的所有任务保持公平。例如,假设系统中共有 25 个可运行的进程。...资源 Linux 内核源代码 (2.6.23/2.6.24):sched-design-CFS.txt by Ingo Molnar IBM Developer Works 文章 Multiprocessing

    1.3K10

    docker底层原理介绍

    resource) (for) (process)groups 1.2.2Linux中的namespace 在Linux系统中,可以同时存在多用户多进程,那么对他们的运行协调管理,通过进程调度和进度管理可以解决...这样每个namespace看上去就像一个单独的Linux系统。 ?...PID namespaces Linux 2.6.24 进程 ID 数字空间 (process ID number space) PID namespaces用来隔离进程的ID空间,使得不同pid namespace...Network namespaces 始于Linux 2.6.24 完成于 Linux 2.6.29 网络相关的系统资源 每个容器用有其独立的网络设备,IP 地址,IP 路由表,/proc/net 目录...User namespaces 始于 Linux 2.6.23 完成于 Linux 3.8) 用户和组 ID 空间 User namespace用来隔离user权限相关的Linux资源,包括user IDs

    2.8K52

    如何提升docker容器安全性

    cgroups实现资源的限制,通过写时复制的机制完成高效的文件操作.docker实现的核心技术-namespace 和 cgroups,其实并不是什么新技术,准确的说namespace 和 cgroups是linux...容器的隔离技术使用的是namespace,但namesapce的资源隔离仅限于以下6个方面 namespace 隔离内容 内核版本 UTS 主机名与域名 Linux 2.6.19 IPC 信号量,消息队列和共享内存...Linux 2.6.19 PID 进程编号 Linux 2.6.24 Network 网络设备,网络栈,端口 始于Linux 2.6.24 完成于 Linux 2.6.29 Mount 文件挂载 Linux...2.4.19 User 用户用户组 始于 Linux 2.6.23 完成于 Linux 3.8 为提升安全性,您的linux内核请升级版本大于3.8 docker1.10开始支持User namespace...简单地说,就是执行调用操作的权限.Linux将超级用户的权限进行分组,每一组代表了所能执行的系统调用操作.

    1.1K20
    领券